diff options
| -rw-r--r-- | services/core/java/com/android/server/webkit/SystemImpl.java | 9 | ||||
| -rw-r--r-- | services/core/java/com/android/server/webkit/WebViewUpdateServiceImpl.java | 2 |
2 files changed, 8 insertions, 3 deletions
diff --git a/services/core/java/com/android/server/webkit/SystemImpl.java b/services/core/java/com/android/server/webkit/SystemImpl.java index 9486cfdb87a0..ed935ced0037 100644 --- a/services/core/java/com/android/server/webkit/SystemImpl.java +++ b/services/core/java/com/android/server/webkit/SystemImpl.java @@ -19,6 +19,7 @@ package com.android.server.webkit; import android.app.ActivityManagerNative; import android.app.AppGlobals; import android.content.Context; +import android.content.pm.ApplicationInfo; import android.content.pm.IPackageDeleteObserver; import android.content.pm.PackageInfo; import android.content.pm.PackageManager; @@ -187,7 +188,8 @@ public class SystemImpl implements SystemInterface { enablePackageForAllUsers(context, packageName, false); try { PackageManager pm = AppGlobals.getInitialApplication().getPackageManager(); - if (pm.getApplicationInfo(packageName, 0).isUpdatedSystemApp()) { + ApplicationInfo applicationInfo = pm.getApplicationInfo(packageName, 0); + if (applicationInfo != null && applicationInfo.isUpdatedSystemApp()) { pm.deletePackage(packageName, new IPackageDeleteObserver.Stub() { public void packageDeleted(String packageName, int returnCode) { enablePackageForAllUsers(context, packageName, false); @@ -214,8 +216,9 @@ public class SystemImpl implements SystemInterface { enable ? PackageManager.COMPONENT_ENABLED_STATE_DEFAULT : PackageManager.COMPONENT_ENABLED_STATE_DISABLED_USER, 0, userId, null); - } catch (RemoteException e) { - Log.w(TAG, "Tried to disable " + packageName + " for user " + userId + ": " + e); + } catch (RemoteException | IllegalArgumentException e) { + Log.w(TAG, "Tried to " + (enable ? "enable " : "disable ") + packageName + + " for user " + userId + ": " + e); } } diff --git a/services/core/java/com/android/server/webkit/WebViewUpdateServiceImpl.java b/services/core/java/com/android/server/webkit/WebViewUpdateServiceImpl.java index 32b195b4c71b..cd976e753a0a 100644 --- a/services/core/java/com/android/server/webkit/WebViewUpdateServiceImpl.java +++ b/services/core/java/com/android/server/webkit/WebViewUpdateServiceImpl.java @@ -160,6 +160,8 @@ public class WebViewUpdateServiceImpl { isFallbackEnabled = isEnabledPackage( mSystemInterface.getPackageInfoForProvider(fallbackProvider)); } catch (NameNotFoundException e) { + // No fallback package installed -> early out. + return; } if (existsValidNonFallbackProvider |