aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--backends/midi/alsa.cpp11
1 files changed, 7 insertions, 4 deletions
diff --git a/backends/midi/alsa.cpp b/backends/midi/alsa.cpp
index a82fffdf0d..6a1a8e88ae 100644
--- a/backends/midi/alsa.cpp
+++ b/backends/midi/alsa.cpp
@@ -150,10 +150,13 @@ int MidiDriver_ALSA::open() {
}
void MidiDriver_ALSA::close() {
- _isOpen = false;
- MidiDriver_MPU401::close();
- if (seq_handle)
- snd_seq_close(seq_handle);
+ if (_isOpen) {
+ _isOpen = false;
+ MidiDriver_MPU401::close();
+ if (seq_handle)
+ snd_seq_close(seq_handle);
+ } else
+ warning("MidiDriver_ALSA: Closing the driver before opening it");
}
void MidiDriver_ALSA::send(uint32 b) {