diff --git a/src/sound/music_midistream.cpp b/src/sound/music_midistream.cpp index 80fd77044..d031caab5 100644 --- a/src/sound/music_midistream.cpp +++ b/src/sound/music_midistream.cpp @@ -518,7 +518,11 @@ void MIDIStreamer::Stop() bool MIDIStreamer::IsPlaying() { - if (EndQueued != 0 && EndQueued < 4) + if (m_Status != STATE_Stopped && MIDI == NULL || (EndQueued != 0 && EndQueued < 4)) + { + Stop(); + } + if (m_Status != STATE_Stopped && !MIDI->IsOpen()) { Stop(); }