summaryrefslogtreecommitdiff
path: root/services/java/com/android/server/pm/PackageManagerService.java
diff options
context:
space:
mode:
authorChristopher Tate <ctate@google.com>2013-08-23 14:01:19 -0700
committerChristopher Tate <ctate@google.com>2013-09-15 17:51:04 -0700
commit06dc8484b4bf4028eed1e289b1d441eecaa22edf (patch)
tree3efd95583105463374b96b6d58ae00ab47a5a8f0 /services/java/com/android/server/pm/PackageManagerService.java
parentdc3335429acf184cf67d022de6fe286c3672663a (diff)
Fix handling of privileged permissions on update
When a bundled app is upgraded, only reprocess ungranted 'system' permissions if the bundled apk is privileged. Also adds the 'privileged' flag to the dumpsys flag summary. Bug 10503183 Change-Id: Ic6560fc904e5970fc871a155c898744a6607f851
Diffstat (limited to 'services/java/com/android/server/pm/PackageManagerService.java')
-rwxr-xr-xservices/java/com/android/server/pm/PackageManagerService.java7
1 files changed, 3 insertions, 4 deletions
diff --git a/services/java/com/android/server/pm/PackageManagerService.java b/services/java/com/android/server/pm/PackageManagerService.java
index 7cc568e25d99..decda96060fe 100755
--- a/services/java/com/android/server/pm/PackageManagerService.java
+++ b/services/java/com/android/server/pm/PackageManagerService.java
@@ -5509,10 +5509,9 @@ public class PackageManagerService extends IPackageManager.Stub {
// version of the one on the data partition, but which
// granted a new system permission that it didn't have
// before. In this case we do want to allow the app to
- // now get the new permission, because it is allowed by
- // the system image.
- allowed = false;
- if (sysPs.pkg != null) {
+ // now get the new permission if the new system-partition
+ // apk is privileged to get it.
+ if (sysPs.pkg != null && isPrivilegedApp(pkg)) {
for (int j=0;
j<sysPs.pkg.requestedPermissions.size(); j++) {
if (perm.equals(