Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit e0af2bb2 authored by Neil Fuller's avatar Neil Fuller
Browse files

Alter condition for starting RulesManagerService

Modify the condition used for starting RulesManagerService:
use mOnlyCore rather than disableNonCoreServices. mOnlyCore is
important for the secure lock screen and when mOnlyCore is true
the RulesManagerService cannot perform trust checks. Therefore,
disable the RulesManagerService when mOnlyCore == true.

disableNonCoreServices is apparently not used.

Bug: 64057583
Test: Boot device with time zone updates enabled and with a lock
pattern set.
Merged-In: Idd7cb6e11b1a91dfe7394f6c98f8fa3e0eec9dce
Change-Id: Idd7cb6e11b1a91dfe7394f6c98f8fa3e0eec9dce
parent 9e3f886d
Loading
Loading
Loading
Loading
+7 −2
Original line number Diff line number Diff line
@@ -965,8 +965,13 @@ public final class SystemServer {
                Trace.traceEnd(Trace.TRACE_TAG_SYSTEM_SERVER);
            }

            if (!disableNonCoreServices && context.getResources().getBoolean(
                        R.bool.config_enableUpdateableTimeZoneRules)) {
            // timezone.RulesManagerService will prevent a device starting up if the chain of trust
            // required for safe time zone updates might be broken. RuleManagerService cannot do
            // this check when mOnlyCore == true, so we don't enable the service in this case.
            final boolean startRulesManagerService =
                    !mOnlyCore && context.getResources().getBoolean(
                            R.bool.config_enableUpdateableTimeZoneRules);
            if (startRulesManagerService) {
                traceBeginAndSlog("StartTimeZoneRulesManagerService");
                mSystemServiceManager.startService(TIME_ZONE_RULES_MANAGER_SERVICE_CLASS);
                Trace.traceEnd(Trace.TRACE_TAG_SYSTEM_SERVER);