@@ -150,27 +150,27 @@ bool BaseSet<T, Tnum_files, Tsearch_in_t
return true;
}
template <class Tbase_set>
bool BaseMedia<Tbase_set>::AddFile(const char *filename, size_t basepath_length, const char *tar_filename)
{
bool ret = false;
DEBUG(grf, 1, "Checking %s for base " SET_TYPE " set", filename);
Tbase_set *set = new Tbase_set();
IniFile *ini = new IniFile();
ini->LoadFromDisk(filename, BASESET_DIR);
char *path = stredup(filename + basepath_length);
ini->LoadFromDisk(path, BASESET_DIR);
char *psep = strrchr(path, PATHSEPCHAR);
if (psep != nullptr) {
psep[1] = '\0';
} else {
*path = '\0';
if (set->FillSetDetails(ini, path, filename)) {
Tbase_set *duplicate = nullptr;
for (Tbase_set *c = BaseMedia<Tbase_set>::available_sets; c != nullptr; c = c->next) {
if (strcmp(c->name, set->name) == 0 || c->shortname == set->shortname) {
duplicate = c;
Status change: