From d3c37427a1c2a4c01fb0974487cec1a1d1f8d28f Mon Sep 17 00:00:00 2001 From: "Philip P. Moltmann" Date: Fri, 11 Oct 2019 14:59:33 -0700 Subject: [PATCH] Kill the app async after perm was revoked We cannot call into activity manager service with locks held. Fixes: 142546160 Test: TH Change-Id: I1318c9ecab5211faa4dd03f1a56cfac58da8daa5 --- .../android/server/pm/permission/PermissionManagerService.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) 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 89908f04a6b30..8583a286461c4 100644 --- a/services/core/java/com/android/server/pm/permission/PermissionManagerService.java +++ b/services/core/java/com/android/server/pm/permission/PermissionManagerService.java @@ -297,7 +297,7 @@ public class PermissionManagerService extends IPermissionManager.Stub { // Critical; after this call the application should never have the permission mPackageManagerInt.writeSettings(false); final int appId = UserHandle.getAppId(uid); - killUid(appId, userId, KILL_APP_REASON_PERMISSIONS_REVOKED); + mHandler.post(() -> killUid(appId, userId, KILL_APP_REASON_PERMISSIONS_REVOKED)); } @Override public void onInstallPermissionRevoked() {