summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Chong Zhang <chz@google.com> 2016-06-13 22:16:35 +0000
committer Android (Google) Code Review <android-gerrit@google.com> 2016-06-13 22:16:36 +0000
commit42edc7c2c25aabe44d41b12bfa4557b028491671 (patch)
treea435b2af397d938244bbe143573958aa423941f5
parent62b08eb5f2949caa033bec904aceadbadfb216a3 (diff)
parent1de22da763576cd54b2d3d51bc47ce99cf89f1ab (diff)
Merge "Prevent crash from null ApplicationInfo after package is removed." into nyc-dev
-rw-r--r--services/core/java/com/android/server/am/ActivityManagerService.java5
1 files changed, 5 insertions, 0 deletions
diff --git a/services/core/java/com/android/server/am/ActivityManagerService.java b/services/core/java/com/android/server/am/ActivityManagerService.java
index c553c226146c..897aa203a548 100644
--- a/services/core/java/com/android/server/am/ActivityManagerService.java
+++ b/services/core/java/com/android/server/am/ActivityManagerService.java
@@ -17784,6 +17784,11 @@ public final class ActivityManagerService extends ActivityManagerNative
getPackageManagerInternalLocked().getApplicationInfo(
ssp,
userId);
+ if (aInfo == null) {
+ Slog.w(TAG, "Dropping ACTION_PACKAGE_REPLACED for non-existent pkg:"
+ + " ssp=" + ssp + " data=" + data);
+ return ActivityManager.BROADCAST_SUCCESS;
+ }
mStackSupervisor.updateActivityApplicationInfoLocked(aInfo);
sendPackageBroadcastLocked(IApplicationThread.PACKAGE_REPLACED,
new String[] {ssp}, userId);