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

Commit 41beb696 authored by Vlad Popa's avatar Vlad Popa
Browse files

Add check to catch settings NPE

Some tests fail in presubmit because of null settings. This should not
happen. Adding some extra safety checks to prevent the crash.

Flag: EXCEMPT bugfix
Test: manual
Bug: 356358486
Change-Id: Idb63e45a7522da74d3a82cf3f0151fbed443a5f2
parent 85be9f7c
Loading
Loading
Loading
Loading
+10 −0
Original line number Diff line number Diff line
@@ -2799,6 +2799,10 @@ public class AudioDeviceBroker {
            return;
        }
        final SettingsAdapter settingsAdapter = mAudioService.getSettings();
        if (settingsAdapter == null) {
            Log.e(TAG, "No settings adapter when saving AdiDeviceState: " + deviceSettings);
            return;
        }
        try {
            boolean res = settingsAdapter.putSecureStringForUser(mAudioService.getContentResolver(),
                    Settings.Secure.AUDIO_DEVICE_INVENTORY,
@@ -2814,6 +2818,12 @@ public class AudioDeviceBroker {
    private String readDeviceSettings() {
        final SettingsAdapter settingsAdapter = mAudioService.getSettings();
        final ContentResolver contentResolver = mAudioService.getContentResolver();
        if (settingsAdapter == null || contentResolver == null) {
            // should not happen, throw Exception for stack trace
            Log.e(TAG, "No settings adapter or content resolver to read device settings",
                    new Exception("readDeviceSettings_NPE"));
            return "";
        }
        return settingsAdapter.getSecureStringForUser(contentResolver,
                Settings.Secure.AUDIO_DEVICE_INVENTORY, UserHandle.USER_CURRENT);
    }