diff options
author | Svet Ganov <svetoslavganov@google.com> | 2016-02-20 08:17:51 -0800 |
---|---|---|
committer | Svetoslav Ganov <svetoslavganov@google.com> | 2016-02-20 16:30:28 +0000 |
commit | 028e8e3c81abcc460aada13736a314f3f6311bd6 (patch) | |
tree | 526fa23fbf21895f4c299e8018a13fcd0e1ac12b /src | |
parent | 8c73974b359e24d797ab57a1c3db17f5474d1b63 (diff) | |
download | android_packages_apps_PackageInstaller-028e8e3c81abcc460aada13736a314f3f6311bd6.tar.gz android_packages_apps_PackageInstaller-028e8e3c81abcc460aada13736a314f3f6311bd6.tar.bz2 android_packages_apps_PackageInstaller-028e8e3c81abcc460aada13736a314f3f6311bd6.zip |
Fix a NPE in GrantPermissionsActivity
We get an NPE if an app that delcates no permissions as used
requests runtime permissions.
bug:21011604
Change-Id: Id0cac6dcbd78ef849a1eafa522b8a06e61b21a1b
Diffstat (limited to 'src')
-rw-r--r-- | src/com/android/packageinstaller/permission/ui/GrantPermissionsActivity.java | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/src/com/android/packageinstaller/permission/ui/GrantPermissionsActivity.java b/src/com/android/packageinstaller/permission/ui/GrantPermissionsActivity.java index 416bb9ca..fc482f3e 100644 --- a/src/com/android/packageinstaller/permission/ui/GrantPermissionsActivity.java +++ b/src/com/android/packageinstaller/permission/ui/GrantPermissionsActivity.java @@ -102,6 +102,12 @@ public class GrantPermissionsActivity extends OverlayTouchActivity PackageInfo callingPackageInfo = getCallingPackageInfo(); + if (callingPackageInfo == null || callingPackageInfo.requestedPermissions == null + || callingPackageInfo.requestedPermissions.length <= 0) { + setResultAndFinish(); + return; + } + // Don't allow legacy apps to request runtime permissions. if (callingPackageInfo.applicationInfo.targetSdkVersion < Build.VERSION_CODES.M) { // Returning empty arrays means a cancellation. @@ -117,11 +123,6 @@ public class GrantPermissionsActivity extends OverlayTouchActivity // If calling package is null we default to deny all. updateDefaultResults(callingPackageInfo, permissionPolicy); - if (callingPackageInfo == null) { - setResultAndFinish(); - return; - } - mAppPermissions = new AppPermissions(this, callingPackageInfo, null, false, new Runnable() { @Override |