summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPatrick Baumann <patb@google.com>2019-11-06 10:36:39 -0800
committerGreg Wroblewski <musashi@google.com>2020-01-10 14:54:13 -0800
commit3efce7589db831d2af567ecf57d80f9a2de40572 (patch)
tree1fdd442ec10d8fe6992c5d9e7f2ec6f407f3a0a2
parent418c43c75baeb1d586062dbb899cc2ebf8b44b78 (diff)
downloadbase-3efce7589db831d2af567ecf57d80f9a2de40572.tar.gz
Fixes NPE when preparing app data during initandroid-9.0.0_r54
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 Merged-In: I8ae4e331d09b4734c54cdc6887b273705dce88b1 (cherry picked from commit 5d3fc339b57950fd8621cb410865e8800ccb6873)
-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 fb2ed11296e5..6ac606e13a68 100644
--- a/services/core/java/com/android/server/pm/PackageManagerService.java
+++ b/services/core/java/com/android/server/pm/PackageManagerService.java
@@ -22513,9 +22513,9 @@ Slog.v(TAG, ":: stepped forward, applying functor at tag " + parser.getName());
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;