Do not trigger revoke-perm callbacks if no change

Revoking a permission might e.g. kill the the app. If a permission gets
revoked that was never granted there was no change, hence no need to call
the callbacks and also no need to kill the app.

Test: "pm clear" two times in a row. The second one did trigger a kill
before, not anymore.
Bug: 133830856
Change-Id: I357f2d939520ac78ef82ecf4feb7936455950fc4
This commit is contained in:
Philip P. Moltmann
2019-07-03 15:44:00 -07:00
parent 914de104b3
commit f50316cb46

View File

@@ -2269,6 +2269,11 @@ public class PermissionManagerService {
return;
}
// Permission is already revoked, no need to do anything.
if (!permissionsState.hasRuntimePermission(permName, userId)) {
return;
}
if (permissionsState.revokeRuntimePermission(bp, userId) ==
PERMISSION_OPERATION_FAILURE) {
return;