diff options
author | 2013-06-26 14:20:18 -0700 | |
---|---|---|
committer | 2013-06-26 14:22:21 -0700 | |
commit | 46eadae12f8ebb9969dcaddd619d0d28e2e31a69 (patch) | |
tree | 4718f52db030259e2de62d705bb4bde3a0718792 | |
parent | 49a31e0d67042886c1b2f5bedd6d0dfafda8a021 (diff) |
Make sure to propagate privileged status when upgrading an app
Bug 9470309
Change-Id: Ibc0c8b2fa01da1bd5f5b6ed5530a6bd9a1384846
-rwxr-xr-x | services/java/com/android/server/pm/PackageManagerService.java | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/services/java/com/android/server/pm/PackageManagerService.java b/services/java/com/android/server/pm/PackageManagerService.java index 4b7bc5f5aaf7..9d0808500c83 100755 --- a/services/java/com/android/server/pm/PackageManagerService.java +++ b/services/java/com/android/server/pm/PackageManagerService.java @@ -8276,6 +8276,9 @@ public class PackageManagerService extends IPackageManager.Stub { boolean updatedSettings = false; parseFlags |= PackageManager.INSTALL_REPLACE_EXISTING | PackageParser.PARSE_IS_SYSTEM; + if ((deletedPackage.applicationInfo.flags&ApplicationInfo.FLAG_PRIVILEGED) != 0) { + parseFlags |= PackageParser.PARSE_IS_PRIVILEGED; + } String packageName = deletedPackage.packageName; res.returnCode = PackageManager.INSTALL_FAILED_REPLACE_COULDNT_DELETE; if (packageName == null) { |