Browse Source

Try to hunt down a few more leaks

svn:r5172
Nick Mathewson 20 years ago
parent
commit
23864ad423
3 changed files with 6 additions and 7 deletions
  1. 2 1
      src/or/main.c
  2. 2 0
      src/or/routerlist.c
  3. 2 6
      src/or/routerparse.c

+ 2 - 1
src/or/main.c

@@ -1303,7 +1303,8 @@ static int
 tor_init(int argc, char *argv[])
 {
   time_of_process_start = time(NULL);
-  closeable_connection_lst = smartlist_create();
+  if (!closeable_connection_lst)
+    closeable_connection_lst = smartlist_create();
   /* Initialize the history structures. */
   rep_hist_init();
   /* Initialize the service cache. */

+ 2 - 0
src/or/routerlist.c

@@ -93,6 +93,8 @@ router_reload_networkstatus(void)
         tor_free(s);
       }
     });
+  SMARTLIST_FOREACH(entries, char *, fn, tor_free(fn));
+  smartlist_free(entries);
   networkstatus_list_clean(time(NULL));
   routers_update_all_from_networkstatus();
   return 0;

+ 2 - 6
src/or/routerparse.c

@@ -642,13 +642,11 @@ int
 router_parse_list_from_string(const char **s, smartlist_t *dest)
 {
   routerinfo_t *router;
-  smartlist_t *routers;
   const char *end;
 
   tor_assert(s);
   tor_assert(*s);
-
-  routers = smartlist_create();
+  tor_assert(dest);
 
   while (1) {
     *s = eat_whitespace(*s);
@@ -670,11 +668,9 @@ router_parse_list_from_string(const char **s, smartlist_t *dest)
       continue;
     }
 
-    smartlist_add(routers, router);
+    smartlist_add(dest, router);
   }
 
-  smartlist_add_all(dest, routers);
-
   return 0;
 }