summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorRoger Dingledine <arma@torproject.org>2005-02-28 01:59:18 +0000
committerRoger Dingledine <arma@torproject.org>2005-02-28 01:59:18 +0000
commitb3177d509ea145db49e41c67c65face8b686096c (patch)
treed267772e6cfd651af2a7a2186d35ebe84d3ccafa /src
parentbed6c0545329d58cf3186877d5e7c08c57bdf5c4 (diff)
downloadtor-b3177d509ea145db49e41c67c65face8b686096c.tar.gz
tor-b3177d509ea145db49e41c67c65face8b686096c.zip
free some more memory at shutdown
svn:r3707
Diffstat (limited to 'src')
-rw-r--r--src/or/main.c2
-rw-r--r--src/or/rephist.c8
2 files changed, 10 insertions, 0 deletions
diff --git a/src/or/main.c b/src/or/main.c
index 46d88711b3..24796df138 100644
--- a/src/or/main.c
+++ b/src/or/main.c
@@ -1265,6 +1265,8 @@ void tor_free_all(void)
tor_tls_free_all();
/* stuff in main.c */
smartlist_free(closeable_connection_lst);
+
+ close_logs(); /* free log strings. do this last so logs keep working. */
}
/** Do whatever cleanup is necessary before shutting Tor down. */
diff --git a/src/or/rephist.c b/src/or/rephist.c
index a00a5c6678..bc9861b255 100644
--- a/src/or/rephist.c
+++ b/src/or/rephist.c
@@ -640,6 +640,13 @@ static void predicted_ports_init(void) {
add_predicted_port(80, time(NULL)); /* add one to kickstart us */
}
+static void predicted_ports_free(void) {
+ SMARTLIST_FOREACH(predicted_ports_list, char *, cp, tor_free(cp));
+ smartlist_free(predicted_ports_list);
+ SMARTLIST_FOREACH(predicted_ports_times, char *, cp, tor_free(cp));
+ smartlist_free(predicted_ports_times);
+}
+
/** Remember that <b>port</b> has been asked for as of time <b>now</b>.
* This is used for predicting what sorts of streams we'll make in the
* future and making circuits to anticipate that.
@@ -736,4 +743,5 @@ void rep_hist_free_all(void)
strmap_free(history_map, free_or_history);
tor_free(read_array);
tor_free(write_array);
+ predicted_ports_free();
}