summaryrefslogtreecommitdiff
path: root/services/permission/java
diff options
context:
space:
mode:
author TreeHugger Robot <treehugger-gerrit@google.com> 2023-02-04 01:26:29 +0000
committer Android (Google) Code Review <android-gerrit@google.com> 2023-02-04 01:26:29 +0000
commite62ef4e15db86e6821331d4e261cb537604746a9 (patch)
tree1fd717dfc972aeb30ee7cd8cdc8eb0c178afd7c7 /services/permission/java
parent561109f6d44152813c192c67fce9e7f666cf2580 (diff)
parent2e9e4b18204e0af29dbb219a0e1cff4f68e67411 (diff)
Merge "Fix NPE in UidPermissionPolicy"
Diffstat (limited to 'services/permission/java')
-rw-r--r--services/permission/java/com/android/server/permission/access/permission/UidPermissionPolicy.kt6
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 02da25de20f1..cd60d1b06f7f 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)
}
@@ -1071,7 +1073,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) {