Merge "Clean up renamed packages during app removal"
This commit is contained in:
committed by
Android (Google) Code Review
commit
32bb9993b7
@@ -7577,6 +7577,8 @@ public class PackageManagerService extends IPackageManager.Stub
|
||||
}
|
||||
mExpectingBetter.clear();
|
||||
|
||||
mSettings.pruneRenamedPackagesLPw();
|
||||
|
||||
// Resolve the storage manager.
|
||||
mStorageManagerPackage = getStorageManagerPackageName();
|
||||
|
||||
@@ -21867,6 +21869,8 @@ public class PackageManagerService extends IPackageManager.Stub
|
||||
}
|
||||
clearPackagePreferredActivitiesLPw(
|
||||
deletedPs.name, changedUsers, UserHandle.USER_ALL);
|
||||
|
||||
mSettings.removeRenamedPackageLPw(deletedPs.realName);
|
||||
}
|
||||
if (changedUsers.size() > 0) {
|
||||
updateDefaultHomeNotLocked(changedUsers);
|
||||
|
||||
@@ -747,6 +747,15 @@ public final class Settings implements Watchable, Snappable {
|
||||
mRenamedPackages.remove(pkgName);
|
||||
}
|
||||
|
||||
void pruneRenamedPackagesLPw() {
|
||||
for (int i = mRenamedPackages.size() - 1; i >= 0; i--) {
|
||||
PackageSetting ps = mPackages.get(mRenamedPackages.valueAt(i));
|
||||
if (ps == null) {
|
||||
mRenamedPackages.removeAt(i);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/** Gets and optionally creates a new shared user id. */
|
||||
SharedUserSetting getSharedUserLPw(String name, int pkgFlags, int pkgPrivateFlags,
|
||||
boolean create) throws PackageManagerException {
|
||||
|
||||
Reference in New Issue
Block a user