mirror of https://github.com/OpenTTD/OpenTTD.git
(svn r19219) -Fix: having OpenMSX's files in a subdirectory did not work as it should.
This commit is contained in:
parent
63b01f2009
commit
fa6ef9d45d
|
@ -70,7 +70,19 @@ bool MusicSet::FillSetDetails(IniFile *ini, const char *path)
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
IniItem *item = names->GetItem(filename, false);
|
IniItem *item = NULL;
|
||||||
|
/* As we possibly add a path to the filename and we compare
|
||||||
|
* on the filename with the path as in the .obm, we need to
|
||||||
|
* keep stripping path elements until we find a match. */
|
||||||
|
for (const char *p = filename; p != NULL; p = strchr(p, PATHSEPCHAR)) {
|
||||||
|
/* Remove possible double path separator characters from
|
||||||
|
* the beginning, so we don't start reading e.g. root. */
|
||||||
|
while (*p == PATHSEPCHAR) p++;
|
||||||
|
|
||||||
|
item = names->GetItem(p, false);
|
||||||
|
if (item != NULL && !StrEmpty(item->value)) break;
|
||||||
|
}
|
||||||
|
|
||||||
if (item == NULL || StrEmpty(item->value)) {
|
if (item == NULL || StrEmpty(item->value)) {
|
||||||
DEBUG(grf, 0, "Base music set song name missing: %s", filename);
|
DEBUG(grf, 0, "Base music set song name missing: %s", filename);
|
||||||
return false;
|
return false;
|
||||||
|
|
Loading…
Reference in New Issue