summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorTreeHugger Robot <treehugger-gerrit@google.com>2018-02-09 18:11:47 +0000
committerAndroid (Google) Code Review <android-gerrit@google.com>2018-02-09 18:11:47 +0000
commit0408b7834d1339c72ab516a068c93f84a3c513cf (patch)
treef8aa228b92653a852a7aa9e01c8ba3415f8dd2d7 /src
parentf43df158e5b823017d44bc06830bf0d3b8d4f161 (diff)
parent03bf3596ab973dc4227490de1e53f4ba389fcf50 (diff)
downloadandroid_packages_apps_PackageInstaller-0408b7834d1339c72ab516a068c93f84a3c513cf.tar.gz
android_packages_apps_PackageInstaller-0408b7834d1339c72ab516a068c93f84a3c513cf.tar.bz2
android_packages_apps_PackageInstaller-0408b7834d1339c72ab516a068c93f84a3c513cf.zip
Merge "Fixing NPE when there is no DownloadProvider"
Diffstat (limited to 'src')
-rw-r--r--src/com/android/packageinstaller/InstallStart.java15
1 files changed, 6 insertions, 9 deletions
diff --git a/src/com/android/packageinstaller/InstallStart.java b/src/com/android/packageinstaller/InstallStart.java
index 5c9ad85c..d06b6f55 100644
--- a/src/com/android/packageinstaller/InstallStart.java
+++ b/src/com/android/packageinstaller/InstallStart.java
@@ -29,6 +29,7 @@ import android.content.pm.ApplicationInfo;
import android.content.pm.IPackageManager;
import android.content.pm.PackageInstaller;
import android.content.pm.PackageManager;
+import android.content.pm.ProviderInfo;
import android.net.Uri;
import android.os.Build;
import android.os.Bundle;
@@ -208,18 +209,14 @@ public class InstallStart extends Activity {
}
private boolean isSystemDownloadsProvider(int uid) {
- final String downloadProviderPackage = getPackageManager().resolveContentProvider(
- DOWNLOADS_AUTHORITY, 0).getComponentName().getPackageName();
+ final ProviderInfo downloadProviderPackage = getPackageManager().resolveContentProvider(
+ DOWNLOADS_AUTHORITY, 0);
if (downloadProviderPackage == null) {
+ // There seems to be no currently enabled downloads provider on the system.
return false;
}
- try {
- ApplicationInfo applicationInfo = getPackageManager().getApplicationInfo(
- downloadProviderPackage, 0);
- return (applicationInfo.isSystemApp() && uid == applicationInfo.uid);
- } catch (PackageManager.NameNotFoundException ex) {
- return false;
- }
+ final ApplicationInfo appInfo = downloadProviderPackage.applicationInfo;
+ return (appInfo.isSystemApp() && uid == appInfo.uid);
}
private IActivityManager getIActivityManager() {