diff options
| author | 2020-09-03 21:54:29 +0000 | |
|---|---|---|
| committer | 2020-09-03 21:54:29 +0000 | |
| commit | 79764eb0cb31b96b65c3ad57b402f56d6cc606f5 (patch) | |
| tree | c7b71a40d03210a3e26678b8fb984c83d9db3f84 | |
| parent | 842e58838382e32923bdf7898bab374270240cad (diff) | |
| parent | 01e0f4813af8502faaa683d55dbbc024b3080741 (diff) | |
DO NOT MERGE Fix NPE in executeDeletePackageLIF. am: 01e0f4813a
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/12495373
Change-Id: I7f92ac2c03ae38a6583d5b12237849e1eaa70282
| -rw-r--r-- | services/core/java/com/android/server/pm/PackageManagerService.java | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/services/core/java/com/android/server/pm/PackageManagerService.java b/services/core/java/com/android/server/pm/PackageManagerService.java index 14b890568843..a980788b3d8f 100644 --- a/services/core/java/com/android/server/pm/PackageManagerService.java +++ b/services/core/java/com/android/server/pm/PackageManagerService.java @@ -19198,7 +19198,8 @@ public class PackageManagerService extends IPackageManager.Stub // We need to get the permission state before package state is (potentially) destroyed. final SparseBooleanArray hadSuspendAppsPermission = new SparseBooleanArray(); - for (int userId : allUserHandles) { + // allUserHandles could be null, so call mUserManager.getUserIds() directly which is cached anyway. + for (int userId : mUserManager.getUserIds()) { hadSuspendAppsPermission.put(userId, checkPermission(Manifest.permission.SUSPEND_APPS, packageName, userId) == PERMISSION_GRANTED); } |