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

Commit 2bf768e2 authored by Hai Zhang's avatar Hai Zhang
Browse files

Revoke install permissions when the permission defining app is uninstalled.

Bug: 155648771
Test: atest RemovePermissionTest
Change-Id: I4a5ecd9bede6f11d5023b3e8345b61d5b04e566f
Merged-In: I4a5ecd9bede6f11d5023b3e8345b61d5b04e566f
parent 008d947b
Loading
Loading
Loading
Loading
+14 −0
Original line number Diff line number Diff line
@@ -4224,6 +4224,20 @@ public class PermissionManagerService extends IPermissionManager.Stub {
                                    revokePermissionFromPackageForUser(p.getPackageName(),
                                            bp.getName(), true, userId, callback));
                        }
                    } else {
                        mPackageManagerInt.forEachPackage(p -> {
                            PackageSetting ps = mPackageManagerInt.getPackageSetting(
                                    p.getPackageName());
                            if (ps == null) {
                                return;
                            }
                            PermissionsState permissionsState = ps.getPermissionsState();
                            if (permissionsState.getInstallPermissionState(bp.getName()) != null) {
                                permissionsState.revokeInstallPermission(bp);
                                permissionsState.updatePermissionFlags(bp, UserHandle.USER_ALL,
                                        MASK_PERMISSION_FLAGS_ALL, 0);
                            }
                        });
                    }
                    it.remove();
                }