summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPatrick Baumann <patb@google.com>2019-11-06 10:36:39 -0800
committerandroid-build-team Robot <android-build-team-robot@google.com>2019-11-16 00:27:34 +0000
commit3470f2801d59ad85b710b49f12507f0f1bba3ad8 (patch)
tree9866f7b45eaad8a4c321e9f4e731f47691e0978e
parent75c97cf80d59e114ef7945ed0bb550f8ab42118d (diff)
downloadbase-3470f2801d59ad85b710b49f12507f0f1bba3ad8.tar.gz
DO NOT MERGE: Fixes NPE when preparing app data during init
When deleting an unused static shared library on Q, the user manager was fetched via mContext.getSystemService. At this time during boot, the service wasn't registered and so null was returned. This has already been addressed in R with a move to injecting dependencies in the PackageManagerService constructor. Bug: 142083996 Bug: 141413692 Test: manual; remove static dependency on eng Q build and reboot Change-Id: I8ae4e331d09b4734c54cdc6887b273705dce88b1 (cherry picked from commit 46e6a0b1ff34d3a0a8fc006ba86677780195a1ff)
-rw-r--r--services/core/java/com/android/server/pm/PackageManagerService.java4
1 files changed, 2 insertions, 2 deletions
diff --git a/services/core/java/com/android/server/pm/PackageManagerService.java b/services/core/java/com/android/server/pm/PackageManagerService.java
index 703c17acd6ce..dd8cb4dba0a7 100644
--- a/services/core/java/com/android/server/pm/PackageManagerService.java
+++ b/services/core/java/com/android/server/pm/PackageManagerService.java
@@ -22967,9 +22967,9 @@ public class PackageManagerService extends IPackageManager.Stub
mSettings.writeKernelMappingLPr(ps);
}
- final UserManager um = mContext.getSystemService(UserManager.class);
+ final UserManagerService um = sUserManager;
UserManagerInternal umInternal = getUserManagerInternal();
- for (UserInfo user : um.getUsers()) {
+ for (UserInfo user : um.getUsers(false /* excludeDying */)) {
final int flags;
if (umInternal.isUserUnlockingOrUnlocked(user.id)) {
flags = StorageManager.FLAG_STORAGE_DE | StorageManager.FLAG_STORAGE_CE;