diff options
| author | 2016-07-21 11:54:53 -0700 | |
|---|---|---|
| committer | 2016-07-21 13:53:01 -0700 | |
| commit | 634124485611cb347f9e41a72df2920a76c32b8c (patch) | |
| tree | 60ae8ad94d2cb5806f198e0dc3692bbf6f9f1249 | |
| parent | 7848856e6b4a667dbd3c42363203df6253dcc6c6 (diff) | |
Skip failed package installs
If a package installation doesn't succeed [or hasn't succeeded yet], its
structures won't be setup so we should skip them when sending first
launch broadcasts.
Change-Id: I89a88480dc6d311a232cae5a236279b2f0a9df3a
Fixes: 30258737
| -rw-r--r-- | services/core/java/com/android/server/pm/PackageManagerService.java | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/services/core/java/com/android/server/pm/PackageManagerService.java b/services/core/java/com/android/server/pm/PackageManagerService.java index b907be07fab9..54c36e111391 100644 --- a/services/core/java/com/android/server/pm/PackageManagerService.java +++ b/services/core/java/com/android/server/pm/PackageManagerService.java @@ -12302,6 +12302,9 @@ public class PackageManagerService extends IPackageManager.Stub { public void run() { for (int i = 0; i < mRunningInstalls.size(); i++) { final PostInstallData data = mRunningInstalls.valueAt(i); + if (data.res.returnCode != PackageManager.INSTALL_SUCCEEDED) { + continue; + } if (pkgName.equals(data.res.pkg.applicationInfo.packageName)) { // right package; but is it for the right user? for (int uIndex = 0; uIndex < data.res.newUsers.length; uIndex++) { |