diff --git a/src/modules/audio/openal/Audio.cpp b/src/modules/audio/openal/Audio.cpp index 1da25d076..80750349f 100644 --- a/src/modules/audio/openal/Audio.cpp +++ b/src/modules/audio/openal/Audio.cpp @@ -408,17 +408,18 @@ void Audio::setDistanceModel(DistanceModel distanceModel) const std::vector &Audio::getRecordingDevices() { - // If recording permission is not granted, inform user about it - // and return empty list. - if (!hasRecordingPermission()) - { - showRecordingPermissionMissingDialog(); - return {}; - } - std::vector devnames; std::vector devices; + // If recording permission is not granted, inform user about it + // and return empty list. + if (!hasRecordingPermission() && getRequestRecordingPermission()) + { + showRecordingPermissionMissingDialog(); + capture.clear(); + return capture; + } + std::string defaultname(alcGetString(NULL, ALC_CAPTURE_DEFAULT_DEVICE_SPECIFIER)); //no device name obtained from AL, fallback to reading from device