Browse Source

Fixed a possible nullptr dereference in the Android runtime permission code

tags/2021-05-28
hogliux 8 years ago
parent
commit
c1f7b6dc16
2 changed files with 10 additions and 2 deletions
  1. +7
    -1
      modules/juce_audio_utils/gui/juce_AudioDeviceSelectorComponent.cpp
  2. +3
    -1
      modules/juce_core/native/juce_android_RuntimePermissions.cpp

+ 7
- 1
modules/juce_audio_utils/gui/juce_AudioDeviceSelectorComponent.cpp View File

@@ -1196,7 +1196,13 @@ void AudioDeviceSelectorComponent::updateAllControls()
void AudioDeviceSelectorComponent::buttonClicked (Button* btn)
{
if (bluetoothButton == btn)
BluetoothMidiDevicePairingDialogue::open();
{
if (! RuntimePermissions::isGranted (RuntimePermissions::bluetoothMidi))
RuntimePermissions::request (RuntimePermissions::bluetoothMidi, nullptr);
if (RuntimePermissions::isGranted (RuntimePermissions::bluetoothMidi))
BluetoothMidiDevicePairingDialogue::open();
}
}
ListBox* AudioDeviceSelectorComponent::getMidiInputSelectorListBox() const noexcept


+ 3
- 1
modules/juce_core/native/juce_android_RuntimePermissions.cpp View File

@@ -40,7 +40,9 @@ namespace
}
std::unique_ptr<RuntimePermissions::Callback> uptr (callbackPtr);
(*uptr) (permissionWasGranted);
if (RuntimePermissions::Callback callbackObj = *uptr)
callbackObj (permissionWasGranted);
}
}


Loading…
Cancel
Save