]> git.ipfire.org Git - thirdparty/tor.git/commitdiff
fix a memory leak in authority_certs_fetch_missing() every time
authorRoger Dingledine <arma@torproject.org>
Sun, 9 Dec 2007 17:43:43 +0000 (17:43 +0000)
committerRoger Dingledine <arma@torproject.org>
Sun, 9 Dec 2007 17:43:43 +0000 (17:43 +0000)
we try to call it but don't have enough dir info.

svn:r12743

src/or/routerlist.c

index 47c780830bd14d62d02c2098d55ad05b1c16bf47..141db022ace55b989c336217ca272e749af496fa 100644 (file)
@@ -311,13 +311,16 @@ authority_cert_get_by_digests(const char *id_digest,
 void
 authority_certs_fetch_missing(networkstatus_vote_t *status, time_t now)
 {
-  digestmap_t *pending = digestmap_new();
-  smartlist_t *missing_digests = smartlist_create();
+  digestmap_t *pending;
+  smartlist_t *missing_digests;
   char *resource = NULL;
 
   if (should_delay_dir_fetches(get_options()))
     return;
 
+  pending = digestmap_new();
+  missing_digests = smartlist_create();
+
   list_pending_downloads(pending, DIR_PURPOSE_FETCH_CERTIFICATE, "fp/");
   if (status) {
     SMARTLIST_FOREACH(status->voters, networkstatus_voter_info_t *, voter,