Browse Source

Print errors when calling MIDI input methods on unsupported platforms

This partially addresses #32065.

(cherry picked from commit 9c0d21477617f8bbf771c26787ca5e13d4b29a8a)
Hugo Locurcio 5 years ago
parent
commit
424d1b5fab
1 changed files with 9 additions and 3 deletions
  1. 9 3
      core/os/os.cpp

+ 9 - 3
core/os/os.cpp

@@ -728,19 +728,25 @@ PoolStringArray OS::get_connected_midi_inputs() {
 		return MIDIDriver::get_singleton()->get_connected_inputs();
 
 	PoolStringArray list;
-	return list;
+	ERR_FAIL_V_MSG(list, vformat("MIDI input isn't supported on %s.", OS::get_singleton()->get_name()));
 }
 
 void OS::open_midi_inputs() {
 
-	if (MIDIDriver::get_singleton())
+	if (MIDIDriver::get_singleton()) {
 		MIDIDriver::get_singleton()->open();
+	} else {
+		ERR_PRINT(vformat("MIDI input isn't supported on %s.", OS::get_singleton()->get_name()));
+	}
 }
 
 void OS::close_midi_inputs() {
 
-	if (MIDIDriver::get_singleton())
+	if (MIDIDriver::get_singleton()) {
 		MIDIDriver::get_singleton()->close();
+	} else {
+		ERR_PRINT(vformat("MIDI input isn't supported on %s.", OS::get_singleton()->get_name()));
+	}
 }
 
 OS::OS() {