diff options
author | Patrick Baumann <patb@google.com> | 2020-09-30 17:00:13 +0000 |
---|---|---|
committer | Patrick Baumann <patb@google.com> | 2020-09-30 17:16:02 +0000 |
commit | 50ee8017ea54bc7c2b977e12147727057274f5d9 (patch) | |
tree | 2e70d2cae4329c84da56267bd646a8d16d19ea1a | |
parent | 8c7a325225054c22bc687a9b7662513796ec0402 (diff) | |
download | base-50ee8017ea54bc7c2b977e12147727057274f5d9.tar.gz |
Handling removing <original-package> tag
This reverts commit I7b9d3c786d653a9b00a553e89d7390bcef45c0f2.
Fixes: 169414761
Test: Manual
Test: Add package A
Test: Verify package A exists
Test: Remove A, add package B w/ original-package A
Test: Verify package A exists, but codepath is to package B
Test: Replace package B w/o original-package A
Test: Verify package A removed and package B added
Change-Id: I198ca545f4fea3ae9d2328a845cbd9167eedf8da
-rw-r--r-- | services/core/java/com/android/server/pm/PackageManagerService.java | 4 | ||||
-rw-r--r-- | services/core/java/com/android/server/pm/Settings.java | 4 |
2 files changed, 8 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 6246b28a3dd6..f191ef4f82cc 100644 --- a/services/core/java/com/android/server/pm/PackageManagerService.java +++ b/services/core/java/com/android/server/pm/PackageManagerService.java @@ -3655,6 +3655,8 @@ public class PackageManagerService extends IPackageManager.Stub PackageParser.readConfigUseRoundIcon(mContext.getResources()); mServiceStartWithDelay = SystemClock.uptimeMillis() + (60 * 1000L); + + Slog.i(TAG, "Fix for b/169414761 is applied"); } /** @@ -11115,6 +11117,8 @@ public class PackageManagerService extends IPackageManager.Stub mSettings.addRenamedPackageLPw(parsedPackage.getRealPackage(), originalPkgSetting.name); mTransferredPackages.add(originalPkgSetting.name); + } else { + mSettings.removeRenamedPackageLPw(parsedPackage.getPackageName()); } } if (pkgSetting.sharedUser != null) { diff --git a/services/core/java/com/android/server/pm/Settings.java b/services/core/java/com/android/server/pm/Settings.java index aeea2514d0a4..a7164f94f66b 100644 --- a/services/core/java/com/android/server/pm/Settings.java +++ b/services/core/java/com/android/server/pm/Settings.java @@ -476,6 +476,10 @@ public final class Settings { return mRenamedPackages.put(pkgName, origPkgName); } + void removeRenamedPackageLPw(String pkgName) { + mRenamedPackages.remove(pkgName); + } + public boolean canPropagatePermissionToInstantApp(String permName) { return mPermissions.canPropagatePermissionToInstantApp(permName); } |