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

Commit 483b2688 authored by Vlad Popa's avatar Vlad Popa
Browse files

Add safety for the absolute volume devince info map checks

Flag: EXEMPT bugfix
Test: trivial
Bug: 372487476
Change-Id: I6a5d3847d1aa85167420e690248896312edae137
parent a99624cb
Loading
Loading
Loading
Loading
+13 −2
Original line number Diff line number Diff line
@@ -286,7 +286,6 @@ import java.util.Objects;
import java.util.Set;
import java.util.TreeSet;
import java.util.concurrent.CancellationException;
import java.util.concurrent.ConcurrentLinkedQueue;
import java.util.concurrent.ExecutionException;
import java.util.concurrent.Executor;
import java.util.concurrent.Executors;
@@ -8044,7 +8043,14 @@ public class AudioService extends IAudioService.Stub
        }
        synchronized (mAbsoluteVolumeDeviceInfoMapLock) {
            if (mAbsoluteVolumeDeviceInfoMap.containsKey(audioSystemDeviceOut)) {
                return mAbsoluteVolumeDeviceInfoMap.get(audioSystemDeviceOut).mDeviceVolumeBehavior;
                final AbsoluteVolumeDeviceInfo deviceInfo = mAbsoluteVolumeDeviceInfoMap.get(
                        audioSystemDeviceOut);
                if (deviceInfo != null) {
                    return deviceInfo.mDeviceVolumeBehavior;
                }
                Log.e(TAG,
                        "Null absolute volume device info stored for key " + audioSystemDeviceOut);
            }
        }
@@ -15038,6 +15044,11 @@ public class AudioService extends IAudioService.Stub
    private void addAudioSystemDeviceOutToAbsVolumeDevices(int audioSystemDeviceOut,
            AbsoluteVolumeDeviceInfo info) {
        if (info == null) {
            Log.e(TAG, "Cannot add null absolute volume info for audioSystemDeviceOut "
                    + audioSystemDeviceOut);
            return;
        }
        if (DEBUG_VOL) {
            Log.d(TAG, "Adding DeviceType: 0x" + Integer.toHexString(audioSystemDeviceOut)
                    + " to mAbsoluteVolumeDeviceInfoMap with behavior "