diff options
Diffstat (limited to 'engines/agos')
-rw-r--r-- | engines/agos/midi.cpp | 8 | ||||
-rw-r--r-- | engines/agos/midi.h | 1 |
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); |