Author: cazfi
Date: Tue Jun 23 17:38:27 2015
New Revision: 29181

URL: http://svn.gna.org/viewcvs/freeciv?rev=29181&view=rev
Log:
Free lookup_req_list() requirement list on exit

See patch #6093

Modified:
    trunk/server/ruleset.c

Modified: trunk/server/ruleset.c
URL: 
http://svn.gna.org/viewcvs/freeciv/trunk/server/ruleset.c?rev=29181&r1=29180&r2=29181&view=diff
==============================================================================
--- trunk/server/ruleset.c      (original)
+++ trunk/server/ruleset.c      Tue Jun 23 17:38:27 2015
@@ -118,6 +118,8 @@
 static char *base_sections = NULL;
 static char *road_sections = NULL;
 
+static struct requirement_vector reqs_list;
+
 static bool load_rulesetdir(const char *rsdir, bool compat_mode,
                             bool act, bool buffer_script);
 static struct section_file *openload_ruleset_file(const char *whichset,
@@ -329,11 +331,10 @@
   const char *type, *name;
   int j;
   const char *filename;
-  static struct requirement_vector list;
 
   filename = secfile_name(file);
 
-  requirement_vector_reserve(&list, 0);
+  requirement_vector_reserve(&reqs_list, 0);
 
   for (j = 0; (type = secfile_lookup_str_default(file, NULL, "%s.%s%d.type",
                                                  sec, sub, j)); j++) {
@@ -415,7 +416,7 @@
       return NULL;
     }
 
-    requirement_vector_append(&list, req);
+    requirement_vector_append(&reqs_list, req);
   }
 
   if (j > MAX_NUM_REQS) {
@@ -425,7 +426,7 @@
     return NULL;
   }
 
-  return &list;
+  return &reqs_list;
 }
 
 /**************************************************************************
@@ -6806,6 +6807,7 @@
 void rulesets_deinit(void)
 {
   script_server_free();
+  requirement_vector_free(&reqs_list);
 }
 
 /**************************************************************************


_______________________________________________
Freeciv-commits mailing list
Freeciv-commits@gna.org
https://mail.gna.org/listinfo/freeciv-commits

Reply via email to