diff options
author | Ruediger Hanke | 2002-10-11 13:08:02 +0000 |
---|---|---|
committer | Ruediger Hanke | 2002-10-11 13:08:02 +0000 |
commit | 8ea56e58a86ca14fa4420ba573ac9d9c0a5602a9 (patch) | |
tree | 03e9b60ac1d8f94e52d13ac46a1722820cd41752 | |
parent | 2d22cc45673e965ebbd70ce4acb5ed5e458701f1 (diff) | |
download | scummvm-rg350-8ea56e58a86ca14fa4420ba573ac9d9c0a5602a9.tar.gz scummvm-rg350-8ea56e58a86ca14fa4420ba573ac9d9c0a5602a9.tar.bz2 scummvm-rg350-8ea56e58a86ca14fa4420ba573ac9d9c0a5602a9.zip |
Close Etude midi driver on exit in the ugghliest way possible
svn-id: r5129
-rw-r--r-- | backends/morphos/morphos_start.cpp | 5 | ||||
-rw-r--r-- | sound/mididrv.cpp | 5 |
2 files changed, 9 insertions, 1 deletions
diff --git a/backends/morphos/morphos_start.cpp b/backends/morphos/morphos_start.cpp index ead98ce614..305cfc0b02 100644 --- a/backends/morphos/morphos_start.cpp +++ b/backends/morphos/morphos_start.cpp @@ -36,6 +36,7 @@ #include "stdafx.h" #include "scumm/scumm.h" +#include "sound/mididrv.h" #include "morphos.h" #include "morphos_scaler.h" #include "morphos_sound.h" @@ -51,6 +52,7 @@ static RDArgs *ScummArgs = NULL; static char*ScummStory = NULL; static char*ScummPath = NULL; STRPTR ScummMusicDriver = NULL; +MidiDriver* EtudeMidiDriver = NULL; LONG ScummMidiUnit = 0; static LONG ScummMidiVolume = 0; static LONG ScummMidiTempo = 0; @@ -92,6 +94,9 @@ OSystem *OSystem_MorphOS_create(int game_id, int gfx_mode, bool full_screen) void close_resources() { + if (EtudeMidiDriver) + EtudeMidiDriver->close(); + if (TheSystem) delete TheSystem; diff --git a/sound/mididrv.cpp b/sound/mididrv.cpp index da314302a0..bf5395c2e4 100644 --- a/sound/mididrv.cpp +++ b/sound/mididrv.cpp @@ -506,9 +506,12 @@ uint32 MidiDriver_ETUDE::property(int prop, uint32 param) return 0; } +extern MidiDriver* EtudeMidiDriver; + MidiDriver *MidiDriver_ETUDE_create() { - return new MidiDriver_ETUDE(); + EtudeMidiDriver = new MidiDriver_ETUDE(); + return EtudeMidiDriver; } #endif // __MORPHOS__ |