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

Commit 771c7042 authored by Eugene Susla's avatar Eugene Susla
Browse files

Grant READ_PHONE_STATE to system apps holding PRIV_READ_PHONE_STATE

Previous code only granted it to priv apps, but not platorm-signed ones.

Test: adb shell dumpsys com.android.carrierdefaultapp
Ensure apps has it's READ_PHONE_STATE granted with SYSTEM_FIXED|GRANTED_BY_DEFAUT
Fixes: 166080454
Change-Id: Idd1ecdf152a23a1c6426d42b94ff9d043f5f743f

Change-Id: Ie7d1c508f916666167e00bb469f860d87a7d9bb6
parent aa28af87
Loading
Loading
Loading
Loading
+6 −9
Original line number Diff line number Diff line
@@ -414,18 +414,15 @@ public final class DefaultPermissionGrantPolicy {
            if (pkg == null
                    || !doesPackageSupportRuntimePermissions(pkg)
                    || ArrayUtils.isEmpty(pkg.requestedPermissions)
                    || !pkg.applicationInfo.isPrivilegedApp()) {
                    || !pm.isGranted(Manifest.permission.READ_PRIVILEGED_PHONE_STATE,
                            pkg, UserHandle.of(userId))) {
                continue;
            }
            for (String permission : pkg.requestedPermissions) {
                if (Manifest.permission.READ_PRIVILEGED_PHONE_STATE.equals(permission)) {
            grantRuntimePermissions(pm, pkg,
                    Collections.singleton(Manifest.permission.READ_PHONE_STATE),
                    true, // systemFixed
                    userId);
        }
            }
        }

    }