Merge "Fix 2656989. Clean up update to updated system applications." into froyo
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 @@
                 }
                 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);
+                }
+            }
         }
     }