aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorNick Mathewson <nickm@torproject.org>2005-09-30 21:22:25 +0000
committerNick Mathewson <nickm@torproject.org>2005-09-30 21:22:25 +0000
commit23864ad423c8be7a2a2d558e47baa8dc122d8de0 (patch)
treeca429560d23f4086c059630ea03e733e89805f1d /src
parent80f2e1022846d26ec46eed80921c903c27699271 (diff)
downloadtor-23864ad423c8be7a2a2d558e47baa8dc122d8de0.tar
tor-23864ad423c8be7a2a2d558e47baa8dc122d8de0.tar.gz
Try to hunt down a few more leaks
svn:r5172
Diffstat (limited to 'src')
-rw-r--r--src/or/main.c3
-rw-r--r--src/or/routerlist.c2
-rw-r--r--src/or/routerparse.c8
3 files changed, 6 insertions, 7 deletions
diff --git a/src/or/main.c b/src/or/main.c
index 836b58556..cbc3e6db2 100644
--- a/src/or/main.c
+++ b/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. */
diff --git a/src/or/routerlist.c b/src/or/routerlist.c
index c37b95a43..ddd33e7e8 100644
--- a/src/or/routerlist.c
+++ b/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;
diff --git a/src/or/routerparse.c b/src/or/routerparse.c
index 7665e2a70..313fcfd6a 100644
--- a/src/or/routerparse.c
+++ b/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;
}