summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSvet Ganov <svetoslavganov@google.com>2017-07-28 13:10:33 -0700
committerandroid-build-team Robot <android-build-team-robot@google.com>2017-07-28 21:20:32 +0000
commitc9935cbce48c19b403eb479590dd9a1a2e01aaab (patch)
tree1192a3fb7c48907d4dc33db33bc74a976b1a6954
parent7fb2578e9dc43d7b7c052f0be838025edcfa5ec2 (diff)
downloadbase-c9935cbce48c19b403eb479590dd9a1a2e01aaab.tar.gz
Handle case for missing permissions - fix NPE
Test: manual Bug:62755026 Change-Id: Ie4dddffdb055f6084d9420ae94d0de2a61574bd8 (cherry picked from commit 39cc33f192d528f250818446ea0418aaf0cfe41f)
-rw-r--r--services/core/java/com/android/server/pm/PackageManagerService.java6
1 files changed, 4 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 c1b98f59566d..ddb583290038 100644
--- a/services/core/java/com/android/server/pm/PackageManagerService.java
+++ b/services/core/java/com/android/server/pm/PackageManagerService.java
@@ -4006,8 +4006,10 @@ public class PackageManagerService extends IPackageManager.Stub
final BasePermission p = mSettings.mPermissions.get(name);
// If the caller is an app that targets pre 26 SDK drop protection flags.
final PermissionInfo permissionInfo = generatePermissionInfo(p, flags);
- permissionInfo.protectionLevel = adjustPermissionProtectionFlagsLPr(
- permissionInfo.protectionLevel, packageName, callingUid);
+ if (permissionInfo != null) {
+ permissionInfo.protectionLevel = adjustPermissionProtectionFlagsLPr(
+ permissionInfo.protectionLevel, packageName, callingUid);
+ }
return permissionInfo;
}
}