Selaa lähdekoodia

Fix a memory leak in dirvote_compute_consensuses()

Sebastian Hahn 15 vuotta sitten
vanhempi
commit
b2dcff5766
2 muutettua tiedostoa jossa 6 lisäystä ja 2 poistoa
  1. 3 0
      changes/bug1831
  2. 3 2
      src/or/dirvote.c

+ 3 - 0
changes/bug1831

@@ -3,3 +3,6 @@
       Bugfix on 0.2.2.14-alpha; fixes bug 1831 partially.
     - Fix a memory leak in dirvote_add_signatures_to_pending_consensus(). 
       Bugfix on 0.2.2.6-alpha; fixes bug 1831 partially.
+    - Fix a memory leak in dirvote_compute_consensuses().
+      Bugfix on 0.2.0.3-alpha; fixes bug 1831 partially.
+

+ 3 - 2
src/or/dirvote.c

@@ -2942,6 +2942,7 @@ dirvote_compute_consensuses(void)
                                strlen(pending_consensus_signatures), 0);
   log_notice(LD_DIR, "Signature(s) posted.");
 
+  smartlist_free(votes);
   return 0;
  err:
   smartlist_free(votes);
@@ -3138,7 +3139,7 @@ void
 dirvote_free_all(void)
 {
   dirvote_clear_votes(1);
-  /* now empty as a result of clear_pending_votes. */
+  /* now empty as a result of dirvote_clear_votes(). */
   smartlist_free(pending_vote_list);
   pending_vote_list = NULL;
   smartlist_free(previous_vote_list);
@@ -3147,7 +3148,7 @@ dirvote_free_all(void)
   dirvote_clear_pending_consensuses();
   tor_free(pending_consensus_signatures);
   if (pending_consensus_signature_list) {
-    /* now empty as a result of clear_pending_votes. */
+    /* now empty as a result of dirvote_clear_votes(). */
     smartlist_free(pending_consensus_signature_list);
     pending_consensus_signature_list = NULL;
   }