diff --git a/services/core/java/com/android/server/pm/permission/PermissionManagerService.java b/services/core/java/com/android/server/pm/permission/PermissionManagerService.java index cfdcac977b78a..a2e4195553fd2 100644 --- a/services/core/java/com/android/server/pm/permission/PermissionManagerService.java +++ b/services/core/java/com/android/server/pm/permission/PermissionManagerService.java @@ -2921,7 +2921,9 @@ public class PermissionManagerService extends IPermissionManager.Stub { wasChanged = true; } - if ((flags & FLAG_PERMISSION_REVOKED_COMPAT) != 0) { + if ((flags & FLAG_PERMISSION_REVOKED_COMPAT) != 0 + && !isPermissionSplitFromNonRuntime(permName, + pkg.getTargetSdkVersion())) { flags &= ~FLAG_PERMISSION_REVOKED_COMPAT; wasChanged = true; // Hard restricted permissions cannot be held.