Merge change 5979 into donut

* changes:
  Remove the constraint to assign new uid when code path changes for system packages
This commit is contained in:
Android (Google) Code Review
2009-07-02 12:20:29 -07:00

View File

@@ -5805,24 +5805,15 @@ class PackageManagerService extends IPackageManager.Stub {
// Check to see if its a disabled system app // Check to see if its a disabled system app
PackageSetting ps = mDisabledSysPackages.get(name); PackageSetting ps = mDisabledSysPackages.get(name);
if((ps != null) && ((ps.pkgFlags & ApplicationInfo.FLAG_SYSTEM) != 0)) { if((ps != null) && ((ps.pkgFlags & ApplicationInfo.FLAG_SYSTEM) != 0)) {
// Could be a replaced system package // This is an updated system app with versions in both system
// Note that if the user replaced a system app, the user has to physically // and data partition. Just let the most recent version
// delete the new one in order to revert to the system app. So even // take precedence.
// if the user updated the system app via an update, the user still
// has to delete the one installed in the data partition in order to pick up the
// new system package.
return p; return p;
} else if ((p.pkg != null) && (p.pkg.applicationInfo != null) && } else if ((p.pkg != null) && (p.pkg.applicationInfo != null)) {
((p.pkg.applicationInfo.flags & ApplicationInfo.FLAG_SYSTEM) == 0)) { // Let the app continue with previous uid if code path changes.
// Check for non-system apps
reportSettingsProblem(Log.WARN, reportSettingsProblem(Log.WARN,
"Package " + name + " codePath changed from " + p.codePath "Package " + name + " codePath changed from " + p.codePath
+ " to " + codePath + "; Retaining data and using new code"); + " to " + codePath + "; Retaining data and using new code");
} else {
reportSettingsProblem(Log.WARN,
"Package " + name + " codePath changed from " + p.codePath
+ " to " + codePath + "; replacing with new");
p = null;
} }
} else if (p.sharedUser != sharedUser) { } else if (p.sharedUser != sharedUser) {
reportSettingsProblem(Log.WARN, reportSettingsProblem(Log.WARN,