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

Commit 4b444f45 authored by TreeHugger Robot's avatar TreeHugger Robot Committed by Automerger Merge Worker
Browse files

Merge "Fix READ_PHONE_STATE per user" into rvc-dev am: 1109f9a0 am: 3a11530c

Change-Id: I383974ad335bd7ea2625f8539c426fa35d83143d
parents 3e5f9f1c 3a11530c
Loading
Loading
Loading
Loading
+4 −3
Original line number Diff line number Diff line
@@ -323,7 +323,7 @@ public final class PermissionPolicyService extends SystemService {
        // Force synchronization as permissions might have changed
        synchronizePermissionsAndAppOpsForUser(userId);

        restoreReadPhoneStatePermissions();
        restoreReadPhoneStatePermissions(userId);

        // Tell observers we are initialized for this user.
        if (callback != null) {
@@ -335,11 +335,12 @@ public final class PermissionPolicyService extends SystemService {
     * Ensure READ_PHONE_STATE user sensitive flags are assigned properly
     * TODO ntmyren: Remove once propagated, and state is repaired
     */
    private void restoreReadPhoneStatePermissions() {
    private void restoreReadPhoneStatePermissions(int userId) {
        PermissionControllerManager manager = new PermissionControllerManager(this.getContext(),
                Handler.getMain());
        PackageManager pm = getContext().getPackageManager();
        List<PackageInfo> packageInfos = pm.getInstalledPackages(MATCH_ALL | GET_PERMISSIONS);
        List<PackageInfo> packageInfos = pm.getInstalledPackagesAsUser(
                MATCH_ALL | GET_PERMISSIONS, userId);
        for (int i = packageInfos.size() - 1; i >= 0; i--) {
            PackageInfo pI = packageInfos.get(i);
            if (pI.requestedPermissions == null) {