Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 06dc8484 authored by Christopher Tate's avatar Christopher Tate
Browse files

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
parent dc333542
Loading
Loading
Loading
Loading
+3 −4
Original line number Diff line number Diff line
@@ -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(
+1 −0
Original line number Diff line number Diff line
@@ -2853,6 +2853,7 @@ final class Settings {
        ApplicationInfo.FLAG_RESTORE_ANY_VERSION, "RESTORE_ANY_VERSION",
        ApplicationInfo.FLAG_EXTERNAL_STORAGE, "EXTERNAL_STORAGE",
        ApplicationInfo.FLAG_LARGE_HEAP, "LARGE_HEAP",
        ApplicationInfo.FLAG_PRIVILEGED, "PRIVILEGED",
        ApplicationInfo.FLAG_FORWARD_LOCK, "FORWARD_LOCK",
        ApplicationInfo.FLAG_CANT_SAVE_STATE, "CANT_SAVE_STATE",
    };