From ecd677ad82240429c02f43cff8d277aff7bf2e8f Mon Sep 17 00:00:00 2001 From: Kweku Adams Date: Mon, 7 Nov 2022 18:59:48 +0000 Subject: [PATCH] Avoid passing in null String. IAppOpsCallback.opChanged can be passed in a null value for the package name. Avoid calling synchronizePackagePermissionsAndAppOpsAsyncForUser when that happens since it expects a NonNull value. Bug: 247127880 Test: N/A Change-Id: I532289e116b4d7b884fac7e1358120e98fecf342 --- .../android/server/policy/PermissionPolicyService.java | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/services/core/java/com/android/server/policy/PermissionPolicyService.java b/services/core/java/com/android/server/policy/PermissionPolicyService.java index ffb652e347503..9a6667308ed20 100644 --- a/services/core/java/com/android/server/policy/PermissionPolicyService.java +++ b/services/core/java/com/android/server/policy/PermissionPolicyService.java @@ -223,9 +223,11 @@ public final class PermissionPolicyService extends SystemService { this::synchronizePackagePermissionsAndAppOpsAsyncForUser); mAppOpsCallback = new IAppOpsCallback.Stub() { - public void opChanged(int op, int uid, String packageName) { - synchronizePackagePermissionsAndAppOpsAsyncForUser(packageName, - UserHandle.getUserId(uid)); + public void opChanged(int op, int uid, @Nullable String packageName) { + if (packageName != null) { + synchronizePackagePermissionsAndAppOpsAsyncForUser(packageName, + UserHandle.getUserId(uid)); + } resetAppOpPermissionsIfNotRequestedForUidAsync(uid); } };