diff options
| -rw-r--r-- | services/core/java/com/android/server/pm/InstallPackageHelper.java | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/services/core/java/com/android/server/pm/InstallPackageHelper.java b/services/core/java/com/android/server/pm/InstallPackageHelper.java index db0b0c58b046..54c201945be6 100644 --- a/services/core/java/com/android/server/pm/InstallPackageHelper.java +++ b/services/core/java/com/android/server/pm/InstallPackageHelper.java @@ -1607,6 +1607,13 @@ final class InstallPackageHelper { + oldSharedUid + " to " + newSharedUid); } + // APK should not re-join shared UID + if (oldPackage.isLeavingSharedUid() && !parsedPackage.isLeavingSharedUid()) { + throw new PrepareFailure(INSTALL_FAILED_UID_CHANGED, + "Package " + parsedPackage.getPackageName() + + " attempting to rejoin " + newSharedUid); + } + // In case of rollback, remember per-user/profile install state allUsers = mPm.mUserManager.getUserIds(); installedUsers = ps.queryInstalledUsers(allUsers, true); |