[tor-commits] [tor/master] Fix some memory issues in test_dns.c

nickm at torproject.org nickm at torproject.org
Wed Aug 26 15:41:40 UTC 2015


commit b531fc7d9a8f75969b0446578ee4afcb109bae3d
Author: Nick Mathewson <nickm at torproject.org>
Date:   Wed Aug 26 11:41:25 2015 -0400

    Fix some memory issues in test_dns.c
---
 src/test/test_dns.c |    7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

diff --git a/src/test/test_dns.c b/src/test/test_dns.c
index fba38fa..ad81914 100644
--- a/src/test/test_dns.c
+++ b/src/test/test_dns.c
@@ -103,7 +103,8 @@ send_resolved_hostname_cell_replacement(edge_connection_t *conn,
 {
   conn_for_resolved_cell = conn;
 
-  last_resolved_hostname = (char *)hostname;
+  tor_free(last_resolved_hostname);
+  last_resolved_hostname = tor_strdup(hostname);
 
   n_send_resolved_hostname_cell_replacement++;
 }
@@ -179,7 +180,8 @@ test_dns_resolve_outer(void *arg)
             prev_n_send_resolved_hostname_cell_replacement + 1);
   tt_assert(exitconn->on_circuit == NULL);
 
-  last_resolved_hostname = NULL;
+  tor_free(last_resolved_hostname);
+  // implies last_resolved_hostname = NULL;
 
   /* CASE 2: dns_resolve_impl returns 1, but does not set hostname.
    * Instead, it yields cached_resolve_t object.
@@ -296,6 +298,7 @@ test_dns_resolve_outer(void *arg)
   tor_free(nextconn);
   tor_free(resolved_name);
   tor_free(fake_resolved);
+  tor_free(last_resolved_hostname);
   return;
 }
 



More information about the tor-commits mailing list