summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorKeith Craigie <kcraigie@google.com>2017-08-07 17:03:18 -0700
committerKeith Craigie <kcraigie@google.com>2017-08-08 20:56:11 +0000
commit883b96d5dddf7032b9735b42c623bdb2042a5afe (patch)
treeb52145013014c7b30f83f992f5d747d0a16ddc84 /src
parentd97f9e45a30cb7daed0552c3306f5a55e8e6a136 (diff)
downloadandroid_packages_apps_PackageInstaller-883b96d5dddf7032b9735b42c623bdb2042a5afe.tar.gz
android_packages_apps_PackageInstaller-883b96d5dddf7032b9735b42c623bdb2042a5afe.tar.bz2
android_packages_apps_PackageInstaller-883b96d5dddf7032b9735b42c623bdb2042a5afe.zip
Fixed NPE in
com.android.packageinstaller.InstallStart#declaresAppOpPermission Failing CTS tests in android.packageinstaller.externalsources.cts.ExternalSourcesTest reveal a NPE in InstallStart#declaresAppOpPermission. Turns out android.content.pm.IPackageManager#getAppOpPermissionPackages can validly return null, yet this code does not check for null before iterating. Bug: 62272351 Test: Re-ran CTS test: run cts -m CtsExternalSourcesTestCases -t android.packageinstaller.externalsources.cts.ExternalSourcesTest -l DEBUG -s 01f2301c0f6ac226 -a armeabi-v7a (cherry picked from commit 67f7aaef9646b5fcc6d1efcd10e623e9add33e7c) Change-Id: I2637b4fd12f0d8487211f411bee850571d8bad9a
Diffstat (limited to 'src')
-rw-r--r--src/com/android/packageinstaller/InstallStart.java3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/com/android/packageinstaller/InstallStart.java b/src/com/android/packageinstaller/InstallStart.java
index f7aa5315..12441b50 100644
--- a/src/com/android/packageinstaller/InstallStart.java
+++ b/src/com/android/packageinstaller/InstallStart.java
@@ -131,6 +131,9 @@ public class InstallStart extends Activity {
private boolean declaresAppOpPermission(int uid, String permission) {
try {
final String[] packages = mIPackageManager.getAppOpPermissionPackages(permission);
+ if (packages == null) {
+ return false;
+ }
for (String packageName : packages) {
try {
if (uid == getPackageManager().getPackageUid(packageName, 0)) {