forked from mirror/OpenTTD
(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.
This commit is contained in:
@@ -642,15 +642,6 @@ int ttd_main(int argc, char *argv[])
|
||||
}
|
||||
free(sounddriver);
|
||||
|
||||
if (musicdriver == NULL && _ini_musicdriver != NULL) musicdriver = strdup(_ini_musicdriver);
|
||||
_music_driver = (MusicDriver*)MusicDriverFactoryBase::SelectDriver(musicdriver, Driver::DT_MUSIC);
|
||||
if (_music_driver == NULL) {
|
||||
StrEmpty(musicdriver) ?
|
||||
usererror("Failed to autoprobe music driver") :
|
||||
usererror("Failed to select requested music driver '%s'", musicdriver);
|
||||
}
|
||||
free(musicdriver);
|
||||
|
||||
if (videodriver == NULL && _ini_videodriver != NULL) videodriver = strdup(_ini_videodriver);
|
||||
_video_driver = (VideoDriver*)VideoDriverFactoryBase::SelectDriver(videodriver, Driver::DT_VIDEO);
|
||||
if (_video_driver == NULL) {
|
||||
@@ -660,6 +651,15 @@ int ttd_main(int argc, char *argv[])
|
||||
}
|
||||
free(videodriver);
|
||||
|
||||
if (musicdriver == NULL && _ini_musicdriver != NULL) musicdriver = strdup(_ini_musicdriver);
|
||||
_music_driver = (MusicDriver*)MusicDriverFactoryBase::SelectDriver(musicdriver, Driver::DT_MUSIC);
|
||||
if (_music_driver == NULL) {
|
||||
StrEmpty(musicdriver) ?
|
||||
usererror("Failed to autoprobe music driver") :
|
||||
usererror("Failed to select requested music driver '%s'", musicdriver);
|
||||
}
|
||||
free(musicdriver);
|
||||
|
||||
_savegame_sort_order = SORT_BY_DATE | SORT_DESCENDING;
|
||||
/* Initialize the zoom level of the screen to normal */
|
||||
_screen.zoom = ZOOM_LVL_NORMAL;
|
||||
|
Reference in New Issue
Block a user