From b0f1fcbead4c3aa03ab8d0544039fc2de0bc4f5d Mon Sep 17 00:00:00 2001 From: rubidium Date: Wed, 16 Dec 2009 23:49:21 +0000 Subject: (svn r18520) -Fix [FS#3272]: allegro doesn't like to work with extmidi; it causes 'random' (looks like a racing condition in allegro) crashes when songs are stopped. --- src/music/extmidi.cpp | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'src/music/extmidi.cpp') diff --git a/src/music/extmidi.cpp b/src/music/extmidi.cpp index 451419801..260044268 100644 --- a/src/music/extmidi.cpp +++ b/src/music/extmidi.cpp @@ -12,6 +12,8 @@ #ifndef __MORPHOS__ #include "../stdafx.h" #include "../debug.h" +#include "../sound/sound_driver.hpp" +#include "../video/video_driver.hpp" #include "extmidi.h" #include #include @@ -29,6 +31,11 @@ static FMusicDriver_ExtMidi iFMusicDriver_ExtMidi; const char *MusicDriver_ExtMidi::Start(const char * const * parm) { + if (strcmp(_video_driver->GetName(), "allegro") == 0 || + strcmp(_sound_driver->GetName(), "allegro") == 0) { + return "the extmidi driver does not work when Allegro is loaded."; + } + const char *command = GetDriverParam(parm, "cmd"); if (StrEmpty(command)) command = EXTERNAL_PLAYER; -- cgit v1.2.3-54-g00ecf