From 3573d400a5940a53747425139e9f7cbe7e9fe114 Mon Sep 17 00:00:00 2001 From: Ben Komalo Date: Fri, 23 Sep 2011 15:08:24 -0700 Subject: [PATCH] Enter minimal boot mode when booting encrypted Bug: 5233488 Change-Id: Iba7a41c69af2387594d2be562d587918cd17a348 --- services/java/com/android/server/SystemServer.java | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/services/java/com/android/server/SystemServer.java b/services/java/com/android/server/SystemServer.java index 977dd6f5d54f8..cdefa001a7d69 100644 --- a/services/java/com/android/server/SystemServer.java +++ b/services/java/com/android/server/SystemServer.java @@ -65,6 +65,7 @@ import java.util.TimerTask; class ServerThread extends Thread { private static final String TAG = "SystemServer"; private static final String ENCRYPTING_STATE = "trigger_restart_min_framework"; + private static final String ENCRYPTED_STATE = "1"; ContentResolver mContentResolver; @@ -150,10 +151,15 @@ class ServerThread extends Thread { Slog.i(TAG, "Package Manager"); // Only run "core" apps if we're encrypting the device. String cryptState = SystemProperties.get("vold.decrypt"); - boolean onlyCore = ENCRYPTING_STATE.equals(cryptState); - if (onlyCore) { + boolean onlyCore = false; + if (ENCRYPTING_STATE.equals(cryptState)) { Slog.w(TAG, "Detected encryption in progress - only parsing core apps"); + onlyCore = true; + } else if (ENCRYPTED_STATE.equals(cryptState)) { + Slog.w(TAG, "Device encrypted - only parsing core apps"); + onlyCore = true; } + pm = PackageManagerService.main(context, factoryTest != SystemServer.FACTORY_TEST_OFF, onlyCore);