aboutsummaryrefslogtreecommitdiff
path: root/backends/midi
diff options
context:
space:
mode:
authorTorbjörn Andersson2010-07-14 04:33:35 +0000
committerTorbjörn Andersson2010-07-14 04:33:35 +0000
commitbc0c3061100a87d14a75c72296124b741e713218 (patch)
tree4d264268be4512a3b24deb9d48aed77b5051f993 /backends/midi
parent1ae8d1689d116454f1c6c41391b860bab9bdd9e7 (diff)
downloadscummvm-rg350-bc0c3061100a87d14a75c72296124b741e713218.tar.gz
scummvm-rg350-bc0c3061100a87d14a75c72296124b741e713218.tar.bz2
scummvm-rg350-bc0c3061100a87d14a75c72296124b741e713218.zip
If the ALSA driver hasn't been opened, closing it should do nothing. This keeps
ScummVM from crashing if, for instance, someone accidentally closes the driver twice. svn-id: r50870
Diffstat (limited to 'backends/midi')
-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) {