diff options
author | Suchi Amalapurapu <asuchitra@google.com> | 2010-05-05 13:37:12 -0700 |
---|---|---|
committer | Suchi Amalapurapu <asuchitra@google.com> | 2010-05-05 14:06:17 -0700 |
commit | c1d07d9bebe487f8881f51f989a299b3c3c6d4fa (patch) | |
tree | 47487a61f6d7920fcce1387cbca48c7c38aa332a /services | |
parent | a69e10db2fb58deb5e27aa67c46d267af928374b (diff) | |
download | frameworks_base-c1d07d9bebe487f8881f51f989a299b3c3c6d4fa.zip frameworks_base-c1d07d9bebe487f8881f51f989a299b3c3c6d4fa.tar.gz frameworks_base-c1d07d9bebe487f8881f51f989a299b3c3c6d4fa.tar.bz2 |
Fix 2656989. Clean up update to updated system applications.
Change-Id: Ic66b00926c45fac43396f1f8f23d0865ba77faba
Diffstat (limited to 'services')
-rw-r--r-- | services/java/com/android/server/PackageManagerService.java | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/services/java/com/android/server/PackageManagerService.java b/services/java/com/android/server/PackageManagerService.java index ba326d6..b9204c7 100644 --- a/services/java/com/android/server/PackageManagerService.java +++ b/services/java/com/android/server/PackageManagerService.java @@ -5780,6 +5780,18 @@ class PackageManagerService extends IPackageManager.Stub { } mSettings.writeLP(); } + } else { + // If this is an update to an existing update, setup + // to remove the existing update. + synchronized (mPackages) { + PackageSetting ps = mSettings.getDisabledSystemPkg(packageName); + if (ps != null && ps.codePathString != null && + !ps.codePathString.equals(oldPkgSetting.codePathString)) { + int installFlags = 0; + res.removedInfo.args = createInstallArgs(0, oldPkgSetting.codePathString, + oldPkgSetting.resourcePathString); + } + } } } |