diff options
| author | 2023-02-01 21:22:54 +0000 | |
|---|---|---|
| committer | 2023-02-03 23:35:05 +0000 | |
| commit | 2e9e4b18204e0af29dbb219a0e1cff4f68e67411 (patch) | |
| tree | 115a1fe374410f1dad04510c0ed711684fecc6c4 /services/permission/java | |
| parent | ff73f8b3e010d981a09ef1271398a2af859ea742 (diff) | |
Fix NPE in UidPermissionPolicy
Bug: 263504888
Test: Build
Change-Id: I6e4baa4527d3c06772d18f936f6cbf161b15a663
Diffstat (limited to 'services/permission/java')
| -rw-r--r-- | services/permission/java/com/android/server/permission/access/permission/UidPermissionPolicy.kt | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/services/permission/java/com/android/server/permission/access/permission/UidPermissionPolicy.kt b/services/permission/java/com/android/server/permission/access/permission/UidPermissionPolicy.kt index a9884dd48371..37f3505ce792 100644 --- a/services/permission/java/com/android/server/permission/access/permission/UidPermissionPolicy.kt +++ b/services/permission/java/com/android/server/permission/access/permission/UidPermissionPolicy.kt @@ -196,7 +196,9 @@ class UidPermissionPolicy : SchemePolicy() { val changedPermissionNames = IndexedSet<String>() trimPermissions(packageName, changedPermissionNames) - trimPermissionStates(appId) + if (appId in newState.systemState.appIds) { + trimPermissionStates(appId) + } changedPermissionNames.forEachIndexed { _, permissionName -> evaluatePermissionStateForAllPackages(permissionName, null) } @@ -1066,7 +1068,7 @@ class UidPermissionPolicy : SchemePolicy() { state: AccessState = newState, action: (PackageState) -> Unit ) { - val packageNames = state.systemState.appIds[appId] + val packageNames = state.systemState.appIds[appId]!! packageNames.forEachIndexed { _, packageName -> val packageState = state.systemState.packageStates[packageName]!! if (packageState.androidPackage != null) { |