diff options
Diffstat (limited to 'src/settings.cpp')
-rw-r--r-- | src/settings.cpp | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/src/settings.cpp b/src/settings.cpp index 998cf547f..051a11e11 100644 --- a/src/settings.cpp +++ b/src/settings.cpp @@ -1190,8 +1190,7 @@ static GRFConfig *GRFLoadConfig(IniFile *ini, const char *grpname, bool is_stati if (group == NULL) return NULL; for (item = group->item; item != NULL; item = item->next) { - GRFConfig *c = CallocT<GRFConfig>(1); - c->filename = strdup(item->name); + GRFConfig *c = new GRFConfig(item->name); /* Parse parameters */ if (!StrEmpty(item->value)) { @@ -1217,7 +1216,7 @@ static GRFConfig *GRFLoadConfig(IniFile *ini, const char *grpname, bool is_stati } ShowInfoF("ini: ignoring invalid NewGRF '%s': %s", item->name, msg); - ClearGRFConfig(&c); + delete c; continue; } @@ -1231,7 +1230,7 @@ static GRFConfig *GRFLoadConfig(IniFile *ini, const char *grpname, bool is_stati } } if (duplicate) { - ClearGRFConfig(&c); + delete c; continue; } |