mirror of https://github.com/OpenTTD/OpenTTD
(svn r19095) -Fix: segfault when a baseset has an empty metadata field
parent
6406b75b8f
commit
f709290220
|
@ -24,7 +24,7 @@ template <class Tbase_set> /* static */ Tbase_set *BaseMedia<Tbase_set>::availab
|
||||||
*/
|
*/
|
||||||
#define fetch_metadata(name) \
|
#define fetch_metadata(name) \
|
||||||
item = metadata->GetItem(name, false); \
|
item = metadata->GetItem(name, false); \
|
||||||
if (item == NULL || strlen(item->value) == 0) { \
|
if (item == NULL || StrEmpty(item->value)) { \
|
||||||
DEBUG(grf, 0, "Base " SET_TYPE "set detail loading: %s field missing", name); \
|
DEBUG(grf, 0, "Base " SET_TYPE "set detail loading: %s field missing", name); \
|
||||||
return false; \
|
return false; \
|
||||||
}
|
}
|
||||||
|
|
|
@ -56,17 +56,6 @@ template <class Tbase_set>
|
||||||
return BaseMedia<Tbase_set>::used_set != NULL;
|
return BaseMedia<Tbase_set>::used_set != NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* Try to read a single piece of metadata and return false if it doesn't exist.
|
|
||||||
* @param name the name of the item to fetch.
|
|
||||||
*/
|
|
||||||
#define fetch_name(name) \
|
|
||||||
item = metadata->GetItem(name, false); \
|
|
||||||
if (item == NULL || strlen(item->value) == 0) { \
|
|
||||||
DEBUG(grf, 0, "Base " SET_TYPE "set detail loading: %s field missing", name); \
|
|
||||||
return false; \
|
|
||||||
}
|
|
||||||
|
|
||||||
bool MusicSet::FillSetDetails(IniFile *ini, const char *path)
|
bool MusicSet::FillSetDetails(IniFile *ini, const char *path)
|
||||||
{
|
{
|
||||||
bool ret = this->BaseSet<MusicSet, NUM_SONGS_AVAILABLE, GM_DIR>::FillSetDetails(ini, path);
|
bool ret = this->BaseSet<MusicSet, NUM_SONGS_AVAILABLE, GM_DIR>::FillSetDetails(ini, path);
|
||||||
|
@ -81,7 +70,7 @@ bool MusicSet::FillSetDetails(IniFile *ini, const char *path)
|
||||||
}
|
}
|
||||||
|
|
||||||
IniItem *item = names->GetItem(filename, false);
|
IniItem *item = names->GetItem(filename, false);
|
||||||
if (item == NULL || strlen(item->value) == 0) {
|
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