summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author John Spurlock <jspurlock@google.com> 2015-02-22 16:09:08 +0000
committer Android (Google) Code Review <android-gerrit@google.com> 2015-02-22 16:09:10 +0000
commitfadb0879d94b7d77b08e65cedbebf51b0b1de7b8 (patch)
tree8847599bc3ad3e1939d5845fb40c0e9782e118b5
parent65bc1f521417a90fcf09d508f90b27cae2c786f7 (diff)
parentbe19ed0bd6acb412a32bec504efae135366e366f (diff)
Merge "VolumePrototypes: Allow current controller to access sessions."
-rw-r--r--services/core/java/com/android/server/media/MediaSessionService.java10
1 files changed, 8 insertions, 2 deletions
diff --git a/services/core/java/com/android/server/media/MediaSessionService.java b/services/core/java/com/android/server/media/MediaSessionService.java
index 06c154e68240..a5efc8396b20 100644
--- a/services/core/java/com/android/server/media/MediaSessionService.java
+++ b/services/core/java/com/android/server/media/MediaSessionService.java
@@ -338,6 +338,7 @@ public class MediaSessionService extends SystemService implements Monitor {
*/
private void enforceMediaPermissions(ComponentName compName, int pid, int uid,
int resolvedUserId) {
+ if (isCurrentVolumeController(uid)) return;
if (getContext()
.checkPermission(android.Manifest.permission.MEDIA_CONTENT_CONTROL, pid, uid)
!= PackageManager.PERMISSION_GRANTED
@@ -347,13 +348,18 @@ public class MediaSessionService extends SystemService implements Monitor {
}
}
- private void enforceSystemUiPermission(String action, int pid, int uid) {
+ private boolean isCurrentVolumeController(int uid) {
if (mAudioManagerInternal != null) {
final int vcuid = mAudioManagerInternal.getVolumeControllerUid();
if (vcuid > 0 && uid == vcuid) {
- return;
+ return true;
}
}
+ return false;
+ }
+
+ private void enforceSystemUiPermission(String action, int pid, int uid) {
+ if (isCurrentVolumeController(uid)) return;
if (getContext().checkPermission(android.Manifest.permission.STATUS_BAR_SERVICE,
pid, uid) != PackageManager.PERMISSION_GRANTED) {
throw new SecurityException("Only system ui may " + action);