From e21ba28bec2a3de75c538c97ff8a4a1dbf632452 Mon Sep 17 00:00:00 2001 From: Soonil Nagarkar Date: Mon, 2 Mar 2020 15:37:01 -0800 Subject: [PATCH] Clear binder identity before checking with compat service Bug: 149673005 Test: manual Change-Id: I3afa190d658106e6fa31bfe11d5dd9775c108887 --- .../server/devicepolicy/DevicePolicyManagerService.java | 3 +++ 1 file changed, 3 insertions(+) diff --git a/services/devicepolicy/java/com/android/server/devicepolicy/DevicePolicyManagerService.java b/services/devicepolicy/java/com/android/server/devicepolicy/DevicePolicyManagerService.java index 4dcbbdd1881d6..eed3d9d51e56b 100644 --- a/services/devicepolicy/java/com/android/server/devicepolicy/DevicePolicyManagerService.java +++ b/services/devicepolicy/java/com/android/server/devicepolicy/DevicePolicyManagerService.java @@ -11814,12 +11814,15 @@ public class DevicePolicyManagerService extends BaseIDevicePolicyManager { } private boolean isSetSecureSettingLocationModeCheckEnabled(String packageName, int userId) { + long ident = mInjector.binderClearCallingIdentity(); try { return mIPlatformCompat.isChangeEnabledByPackageName(USE_SET_LOCATION_ENABLED, packageName, userId); } catch (RemoteException e) { Log.e(LOG_TAG, "Failed to get a response from PLATFORM_COMPAT_SERVICE", e); return getTargetSdk(packageName, userId) > Build.VERSION_CODES.Q; + } finally { + mInjector.binderRestoreCallingIdentity(ident); } }