summaryrefslogtreecommitdiffstats
path: root/services/java/com/android/server/PackageManagerService.java
diff options
context:
space:
mode:
authorAndroid (Google) Code Review <android-gerrit@google.com>2009-07-06 11:02:59 -0700
committerThe Android Open Source Project <initial-contribution@android.com>2009-07-06 11:02:59 -0700
commit3042bb623870b877e18dabb07c31b5b8f45afa1d (patch)
tree5f99e8c9e8221cf4027ec6546b72a0f220a4ce53 /services/java/com/android/server/PackageManagerService.java
parentf77b4112ea4bf95b902d8ddb53bb7b1ad352bcec (diff)
parent9701b3d594868bd6750d5887af560c6295ea091b (diff)
downloadframeworks_base-3042bb623870b877e18dabb07c31b5b8f45afa1d.zip
frameworks_base-3042bb623870b877e18dabb07c31b5b8f45afa1d.tar.gz
frameworks_base-3042bb623870b877e18dabb07c31b5b8f45afa1d.tar.bz2
am 9701b3d5: Merge change 5979 into donut
Merge commit '9701b3d594868bd6750d5887af560c6295ea091b' * commit '9701b3d594868bd6750d5887af560c6295ea091b': Remove the constraint to assign new uid when code path changes for system packages
Diffstat (limited to 'services/java/com/android/server/PackageManagerService.java')
-rw-r--r--services/java/com/android/server/PackageManagerService.java19
1 files changed, 5 insertions, 14 deletions
diff --git a/services/java/com/android/server/PackageManagerService.java b/services/java/com/android/server/PackageManagerService.java
index 384d334..fc6f100 100644
--- a/services/java/com/android/server/PackageManagerService.java
+++ b/services/java/com/android/server/PackageManagerService.java
@@ -5808,24 +5808,15 @@ class PackageManagerService extends IPackageManager.Stub {
// Check to see if its a disabled system app
PackageSetting ps = mDisabledSysPackages.get(name);
if((ps != null) && ((ps.pkgFlags & ApplicationInfo.FLAG_SYSTEM) != 0)) {
- // Could be a replaced system package
- // Note that if the user replaced a system app, the user has to physically
- // delete the new one in order to revert to the system app. So even
- // 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.
+ // This is an updated system app with versions in both system
+ // and data partition. Just let the most recent version
+ // take precedence.
return p;
- } else if ((p.pkg != null) && (p.pkg.applicationInfo != null) &&
- ((p.pkg.applicationInfo.flags & ApplicationInfo.FLAG_SYSTEM) == 0)) {
- // Check for non-system apps
+ } else if ((p.pkg != null) && (p.pkg.applicationInfo != null)) {
+ // Let the app continue with previous uid if code path changes.
reportSettingsProblem(Log.WARN,
"Package " + name + " codePath changed from " + p.codePath
+ " 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) {
reportSettingsProblem(Log.WARN,