(svn r7522) -Codechange: Have CopyGRFConfigList clear the destination list before assigning
authorDarkvater
Thu, 21 Dec 2006 10:09:43 +0000
changeset 5351 c83b547490f0
parent 5350 7564e1c8f5dd
child 5352 86fca6a41aa1
(svn r7522) -Codechange: Have CopyGRFConfigList clear the destination list before assigning
values to it. This cuts down on memleaks which could exist when the function was
not used carefully.
newgrf_config.c
--- a/newgrf_config.c	Thu Dec 21 00:13:56 2006 +0000
+++ b/newgrf_config.c	Thu Dec 21 10:09:43 2006 +0000
@@ -115,6 +115,8 @@
 {
 	GRFConfig *c;
 
+	/* Clear destination as it will be overwritten */
+	ClearGRFConfigList(dst);
 	for (; src != NULL; src = src->next) {
 		c = calloc(1, sizeof(*c));
 		*c = *src;
@@ -135,8 +137,6 @@
 {
 	GRFConfig **c = &_grfconfig;
 
-	ClearGRFConfigList(c);
-
 	if (defaults) c = CopyGRFConfigList(c, _grfconfig_newgame);
 	CopyGRFConfigList(c, _grfconfig_static);
 }