(svn r19095) -Fix: segfault when a baseset has an empty metadata field

replace/41b28d7194a279bdc17475d4fbe2ea6ec885a466
yexo 15 years ago
parent 6406b75b8f
commit f709290220

@ -24,7 +24,7 @@ template <class Tbase_set> /* static */ Tbase_set *BaseMedia<Tbase_set>::availab
*/
#define fetch_metadata(name) \
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); \
return false; \
}

@ -56,17 +56,6 @@ template <class Tbase_set>
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 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);
if (item == NULL || strlen(item->value) == 0) {
if (item == NULL || StrEmpty(item->value)) {
DEBUG(grf, 0, "Base music set song name missing: %s", filename);
return false;
}

Loading…
Cancel
Save