mirror of https://github.com/OpenTTD/OpenTTD
(svn r7517) -Codechange: Set pointers to NULL when freeing the newgrf config variables and add the proper const to CopyGRFConfigList
parent
9011371e83
commit
1812bcfc8c
|
@ -82,15 +82,16 @@ bool FillGRFDetails(GRFConfig *config, bool is_static)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
void ClearGRFConfig(GRFConfig *config)
|
void ClearGRFConfig(GRFConfig **config)
|
||||||
{
|
{
|
||||||
/* GCF_COPY as in NOT strdupped/alloced the filename, name and info */
|
/* GCF_COPY as in NOT strdupped/alloced the filename, name and info */
|
||||||
if (!HASBIT(config->flags, GCF_COPY)) {
|
if (!HASBIT((*config)->flags, GCF_COPY)) {
|
||||||
free(config->filename);
|
free((*config)->filename);
|
||||||
free(config->name);
|
free((*config)->name);
|
||||||
free(config->info);
|
free((*config)->info);
|
||||||
}
|
}
|
||||||
free(config);
|
free(*config);
|
||||||
|
*config = NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -100,13 +101,13 @@ void ClearGRFConfigList(GRFConfig *config)
|
||||||
GRFConfig *c, *next;
|
GRFConfig *c, *next;
|
||||||
for (c = config; c != NULL; c = next) {
|
for (c = config; c != NULL; c = next) {
|
||||||
next = c->next;
|
next = c->next;
|
||||||
ClearGRFConfig(c);
|
ClearGRFConfig(&c);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/* Copy a GRF Config list */
|
/* Copy a GRF Config list */
|
||||||
static GRFConfig **CopyGRFConfigList(GRFConfig **dst, GRFConfig *src)
|
GRFConfig **CopyGRFConfigList(GRFConfig **dst, const GRFConfig *src)
|
||||||
{
|
{
|
||||||
GRFConfig *c;
|
GRFConfig *c;
|
||||||
|
|
||||||
|
|
|
@ -43,7 +43,8 @@ extern GRFConfig *_grfconfig_static;
|
||||||
void ScanNewGRFFiles(void);
|
void ScanNewGRFFiles(void);
|
||||||
const GRFConfig *FindGRFConfig(uint32 grfid, uint8 *md5sum);
|
const GRFConfig *FindGRFConfig(uint32 grfid, uint8 *md5sum);
|
||||||
GRFConfig *GetGRFConfig(uint32 grfid);
|
GRFConfig *GetGRFConfig(uint32 grfid);
|
||||||
void ClearGRFConfig(GRFConfig *config);
|
GRFConfig **CopyGRFConfigList(GRFConfig **dst, const GRFConfig *src);
|
||||||
|
void ClearGRFConfig(GRFConfig **config);
|
||||||
void ClearGRFConfigList(GRFConfig *config);
|
void ClearGRFConfigList(GRFConfig *config);
|
||||||
void ResetGRFConfig(bool defaults);
|
void ResetGRFConfig(bool defaults);
|
||||||
bool IsGoodGRFConfigList(void);
|
bool IsGoodGRFConfigList(void);
|
||||||
|
|
|
@ -1534,7 +1534,7 @@ static GRFConfig *GRFLoadConfig(IniFile *ini, const char *grpname, bool is_stati
|
||||||
}
|
}
|
||||||
|
|
||||||
ShowInfoF("ini: ignoring invalid NewGRF '%s': %s", item->name, msg);
|
ShowInfoF("ini: ignoring invalid NewGRF '%s': %s", item->name, msg);
|
||||||
ClearGRFConfig(c);
|
ClearGRFConfig(&c);
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue