Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 60eddfde authored by Jean-Michel Trivi's avatar Jean-Michel Trivi
Browse files

AudioService: check permission on forceVolumeControlStream

Check MODIFY_PHONE_STATE  permission on
   AudioManager.forceVolumeControlStream

Test: manual: verify UI can still select between two stream volumes

Change-Id: I50da25d50829193c9f9d7761bb6e58d1aa5cf3f4
parent 95eaf00f
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -1227,6 +1227,7 @@ public class AudioManager {
     *
     * @hide
     */
    @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE)
    public void forceVolumeControlStream(int streamType) {
        final IAudioService service = getService();
        try {
+4 −0
Original line number Diff line number Diff line
@@ -1969,6 +1969,10 @@ public class AudioService extends IAudioService.Stub

    /** @see AudioManager#forceVolumeControlStream(int) */
    public void forceVolumeControlStream(int streamType, IBinder cb) {
        if (mContext.checkCallingOrSelfPermission(android.Manifest.permission.MODIFY_PHONE_STATE)
                != PackageManager.PERMISSION_GRANTED) {
            return;
        }
        if (DEBUG_VOL) { Log.d(TAG, String.format("forceVolumeControlStream(%d)", streamType)); }
        synchronized(mForceControlStreamLock) {
            if (mVolumeControlStream != -1 && streamType != -1) {