From caf9f4926662558e030db68df89775de2a5653bd Mon Sep 17 00:00:00 2001 From: Jeff Sharkey Date: Wed, 16 Dec 2015 10:22:45 -0700 Subject: [PATCH] Relax isUserRunning() when asking about self. When a caller is asking about locked state of themselves, don't require the INTERACT_ACROSS_USERS permission. Bug: 26178790 Change-Id: I0f02ebfed87b2e1cddc1cb044a9f04272f85483b --- .../java/com/android/server/am/ActivityManagerService.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/services/core/java/com/android/server/am/ActivityManagerService.java b/services/core/java/com/android/server/am/ActivityManagerService.java index 927a7b6d1b296..d8724b27e0e18 100644 --- a/services/core/java/com/android/server/am/ActivityManagerService.java +++ b/services/core/java/com/android/server/am/ActivityManagerService.java @@ -20453,8 +20453,8 @@ public final class ActivityManagerService extends ActivityManagerNative @Override public boolean isUserRunning(int userId, int flags) { - if (checkCallingPermission(INTERACT_ACROSS_USERS) - != PackageManager.PERMISSION_GRANTED) { + if (userId != UserHandle.getCallingUserId() && checkCallingPermission( + INTERACT_ACROSS_USERS) != PackageManager.PERMISSION_GRANTED) { String msg = "Permission Denial: isUserRunning() from pid=" + Binder.getCallingPid() + ", uid=" + Binder.getCallingUid()