OSDN Git Service

Fix to check the incoming userid argument for RingtonePlayer
authorSungmin Choi <sungmin.choi@lge.com>
Sat, 8 Aug 2015 01:12:19 +0000 (18:12 -0700)
committerJean-Michel Trivi <jmtrivi@google.com>
Fri, 14 Aug 2015 00:07:11 +0000 (17:07 -0700)
In PowerNotificationWarnings, where it dispatches notifications
with UserHandle.ALL:
    mNoMan.notifyAsUser(TAG_NOTIFICATION, R.id.notification_power, n, UserHandle.ALL);
The fix is to have RingtonePlayer check the incoming userId argument to playAsync(),
and change USER_ALL to USER_OWNER.

BUG=22516181
BUG=22992637
Change-Id: Ia3f8aaa2bee7fb15c24542e2331b2bc5a877e715

packages/SystemUI/src/com/android/systemui/media/RingtonePlayer.java

index fe876d7..7f68e29 100644 (file)
@@ -159,7 +159,9 @@ public class RingtonePlayer extends SystemUI {
             if (Binder.getCallingUid() != Process.SYSTEM_UID) {
                 throw new SecurityException("Async playback only available from system UID.");
             }
-
+            if (UserHandle.ALL.equals(user)) {
+                user = UserHandle.OWNER;
+            }
             mAsyncPlayer.play(getContextForUser(user), uri, looping, aa);
         }