diff options
Diffstat (limited to 'engines/lure/sound.cpp')
-rw-r--r-- | engines/lure/sound.cpp | 20 |
1 files changed, 3 insertions, 17 deletions
diff --git a/engines/lure/sound.cpp b/engines/lure/sound.cpp index 5f954eb337..8ab0f5486c 100644 --- a/engines/lure/sound.cpp +++ b/engines/lure/sound.cpp @@ -97,8 +97,8 @@ SoundManager::~SoundManager() { if (_driver) { _driver->close(); delete _driver; + _driver = NULL; } - _driver = NULL; g_system->deleteMutex(_soundMutex); } @@ -597,6 +597,7 @@ void SoundManager::doTimer() { MidiMusic::MidiMusic(MidiDriver *driver, ChannelEntry channels[NUM_CHANNELS], uint8 channelNum, uint8 soundNum, bool isMus, uint8 numChannels, void *soundData, uint32 size) { _driver = driver; + assert(_driver); _channels = channels; _soundNumber = soundNum; _channelNumber = channelNum; @@ -620,9 +621,7 @@ MidiMusic::MidiMusic(MidiDriver *driver, ChannelEntry channels[NUM_CHANNELS], _parser->setMidiDriver(this); _parser->setTimerRate(_driver->getBaseTempo()); - this->open(); - - _soundData = (uint8 *) soundData; + _soundData = (uint8 *)soundData; _soundSize = size; // Check whether the music data is compressed - if so, decompress it for the duration @@ -654,7 +653,6 @@ MidiMusic::MidiMusic(MidiDriver *driver, ChannelEntry channels[NUM_CHANNELS], MidiMusic::~MidiMusic() { _parser->unloadMusic(); delete _parser; - this->close(); delete _decompressedSound; } @@ -686,17 +684,6 @@ void MidiMusic::playMusic() { _isPlaying = true; } -int MidiMusic::open() { - // Don't ever call open without first setting the output driver! - if (!_driver) - return 255; - - return 0; -} - -void MidiMusic::close() { -} - void MidiMusic::send(uint32 b) { if (_passThrough) { _driver->send(b); @@ -749,7 +736,6 @@ void MidiMusic::stopMusic() { debugC(ERROR_DETAILED, kLureDebugSounds, "MidiMusic::stopMusic sound %d", _soundNumber); _isPlaying = false; _parser->unloadMusic(); - close(); } } // End of namespace Lure |