Browse Source

Make sure to empty the `capture` and return that instead.

--HG--
branch : androidmic
Miku AuahDark 5 years ago
parent
commit
c8a2978697
1 changed files with 6 additions and 5 deletions
  1. 6 5
      src/modules/audio/openal/Audio.cpp

+ 6 - 5
src/modules/audio/openal/Audio.cpp

@@ -408,17 +408,18 @@ void Audio::setDistanceModel(DistanceModel distanceModel)
 
 
 const std::vector<love::audio::RecordingDevice*> &Audio::getRecordingDevices()
 const std::vector<love::audio::RecordingDevice*> &Audio::getRecordingDevices()
 {
 {
+	std::vector<std::string> devnames;
+	std::vector<love::audio::RecordingDevice*> devices;
+
 	// If recording permission is not granted, inform user about it
 	// If recording permission is not granted, inform user about it
 	// and return empty list.
 	// and return empty list.
-	if (!hasRecordingPermission())
+	if (!hasRecordingPermission() && getRequestRecordingPermission())
 	{
 	{
 		showRecordingPermissionMissingDialog();
 		showRecordingPermissionMissingDialog();
-		return {};
+		capture.clear();
+		return capture;
 	}
 	}
 
 
-	std::vector<std::string> devnames;
-	std::vector<love::audio::RecordingDevice*> devices;
-
 	std::string defaultname(alcGetString(NULL, ALC_CAPTURE_DEFAULT_DEVICE_SPECIFIER));
 	std::string defaultname(alcGetString(NULL, ALC_CAPTURE_DEFAULT_DEVICE_SPECIFIER));
 
 
 	//no device name obtained from AL, fallback to reading from device
 	//no device name obtained from AL, fallback to reading from device