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

Commit f5f1b891 authored by Dmitry Shmidt's avatar Dmitry Shmidt
Browse files

AudioService: Fix Mic Mute restriction processing



Bug: 141192769
Test: Manual

Change-Id: I26ac98a0572ecf48cc61deb95b7fa894aed8e3d4
Signed-off-by: default avatarDmitry Shmidt <dimitrysh@google.com>
parent 3b6a00ec
Loading
Loading
Loading
Loading
+5 −4
Original line number Diff line number Diff line
@@ -1566,12 +1566,13 @@ public class AudioService extends IAudioService.Stub
        AudioSystem.setMasterMute(masterMute);
        broadcastMasterMuteStatus(masterMute);

        boolean microphoneMute = mUserManagerInternal.getUserRestriction(
        mMicMuteFromRestrictions = mUserManagerInternal.getUserRestriction(
                currentUser, UserManager.DISALLOW_UNMUTE_MICROPHONE);
        if (DEBUG_VOL) {
            Log.d(TAG, String.format("Mic mute %s, user=%d", microphoneMute, currentUser));
            Log.d(TAG, String.format("Mic mute %b, user=%d", mMicMuteFromRestrictions,
                    currentUser));
        }
        AudioSystem.muteMicrophone(microphoneMute);
        setMicrophoneMuteNoCallerCheck(currentUser);
    }

    private int rescaleIndex(int index, int srcStream, int dstStream) {
@@ -2876,7 +2877,7 @@ public class AudioService extends IAudioService.Stub
    private void setMicrophoneMuteNoCallerCheck(int userId) {
        final boolean muted = isMicrophoneMuted();
        if (DEBUG_VOL) {
            Log.d(TAG, String.format("Mic mute %d, user=%d", muted, userId));
            Log.d(TAG, String.format("Mic mute %b, user=%d", muted, userId));
        }
        // only mute for the current user
        if (getCurrentUserId() == userId || userId == android.os.Process.SYSTEM_UID) {