(svn r12373) -Fix [FS#1849]: win32 music driver fails if path is too long (128 chars is too much for mci it seems), so retry using the short path name (8.3 style) if available

This commit is contained in:
glx 2008-03-15 21:20:40 +00:00
parent 1abd2bd700
commit 013d7db19f
1 changed files with 6 additions and 1 deletions

View File

@ -61,7 +61,12 @@ static bool MidiIntPlaySong(const char *filename)
{
MidiSendCommand(_T("close all"));
if (MidiSendCommand(_T("open \"%s\" type sequencer alias song"), OTTD2FS(filename)) != 0) return false;
if (MidiSendCommand(_T("open \"%s\" type sequencer alias song"), OTTD2FS(filename)) != 0) {
/* Let's try the "short name" */
TCHAR buf[MAX_PATH];
if (GetShortPathName(OTTD2FS(filename), buf, MAX_PATH) == 0) return false;
if (MidiSendCommand(_T("open \"%s\" type sequencer alias song"), buf) != 0) return false;
}
return MidiSendCommand(_T("play song from 0")) == 0;
}