aboutsummaryrefslogtreecommitdiff
path: root/engines/draci
diff options
context:
space:
mode:
Diffstat (limited to 'engines/draci')
-rw-r--r--engines/draci/music.cpp8
-rw-r--r--engines/draci/music.h1
2 files changed, 8 insertions, 1 deletions
diff --git a/engines/draci/music.cpp b/engines/draci/music.cpp
index caa82c2cc0..cc1cd6d3fb 100644
--- a/engines/draci/music.cpp
+++ b/engines/draci/music.cpp
@@ -97,10 +97,16 @@ int MusicPlayer::open() {
return 0;
}
+bool MusicPlayer::isOpen() const {
+ return _driver && _driver->isOpen();
+}
+
void MusicPlayer::close() {
stop();
- if (_driver)
+ if (_driver) {
_driver->close();
+ delete _driver;
+ }
_driver = 0;
}
diff --git a/engines/draci/music.h b/engines/draci/music.h
index f6f3a5ae50..0d15fdaf1b 100644
--- a/engines/draci/music.h
+++ b/engines/draci/music.h
@@ -61,6 +61,7 @@ public:
// MidiDriver interface implementation
int open();
+ bool isOpen() const;
void close();
void send(uint32 b);