aboutsummaryrefslogtreecommitdiff
path: root/engines/agos
diff options
context:
space:
mode:
Diffstat (limited to 'engines/agos')
-rw-r--r--engines/agos/midi.cpp8
-rw-r--r--engines/agos/midi.h1
2 files changed, 8 insertions, 1 deletions
diff --git a/engines/agos/midi.cpp b/engines/agos/midi.cpp
index fe2d1cd25b..e80b89d43c 100644
--- a/engines/agos/midi.cpp
+++ b/engines/agos/midi.cpp
@@ -85,11 +85,17 @@ int MidiPlayer::open() {
return 0;
}
+bool MidiPlayer::isOpen() const {
+ return _driver && _driver->isOpen();
+}
+
void MidiPlayer::close() {
stop();
// _system->lockMutex(_mutex);
- if (_driver)
+ if (_driver) {
+ delete _driver;
_driver->close();
+ }
_driver = NULL;
clearConstructs();
// _system->unlockMutex(_mutex);
diff --git a/engines/agos/midi.h b/engines/agos/midi.h
index 9c8303ba3c..c27c5a7973 100644
--- a/engines/agos/midi.h
+++ b/engines/agos/midi.h
@@ -115,6 +115,7 @@ public:
public:
// MidiDriver interface implementation
int open();
+ bool isOpen() const;
void close();
void send(uint32 b);