Commit 73c1cfe8 authored by Nick Mathewson's avatar Nick Mathewson 🤹
Browse files

r16154@catbus: nickm | 2007-10-25 10:29:47 -0400

 Fix more memory leaks, with help from dmalloc.


svn:r12188
parent 53e62339
Loading
Loading
Loading
Loading
+11 −1
Original line number Diff line number Diff line
@@ -2,10 +2,20 @@ Changes in version 0.2.0.10-alpha - 2007-1?-??
  o Minor bugfixes:
    - Refuse to start if both ORPort and UseBridges are set. Bugfix
      on 0.2.0.x.

  o Minor bugfixes (memory leaks):
    - Stop leaking memory every time we parse a v3 certificate. Bugfix
      on 0.2.0.1-alpha.
    - Stop leaking memory every time we load a v3 certificate. Bugfix
      on 0.2.0.1-alpha.  Fixes Bug 536.
      on 0.2.0.1-alpha.  Fixes Bug 536
    - Stop leaking a cached networkstatus on exit.  Bugfix on
      0.2.0.3-alpha.
    - Stop leaking voter information every time we free a consensus.  Bugfix
      on 0.2.0.3-alpha.
    - Stop leaking signed data every time we check a voter signature.
      Bugfix on 0.2.0.3-alpha.
    - Stop leaking a signature every time we fail to parse a consensus or
      a vote.  Bugfix on 0.2.0.3-alpha.


Changes in version 0.2.0.9-alpha - 2007-10-24
+1 −0
Original line number Diff line number Diff line
@@ -2813,5 +2813,6 @@ dirserv_free_all(void)
    digestmap_free(cached_v2_networkstatus, _free_cached_dir);
    cached_v2_networkstatus = NULL;
  }
  cached_dir_decref(cached_v3_networkstatus);
}
+3 −0
Original line number Diff line number Diff line
@@ -231,6 +231,8 @@ networkstatus_vote_free(networkstatus_vote_t *ns)
      tor_free(voter->nickname);
      tor_free(voter->address);
      tor_free(voter->contact);
      tor_free(voter->signature);
      tor_free(voter);
    });
    smartlist_free(ns->voters);
  }
@@ -302,6 +304,7 @@ networkstatus_check_voter_signature(networkstatus_vote_t *consensus,
  } else {
    voter->good_signature = 1;
  }
  tor_free(signed_digest);
  return 0;
}

+1 −0
Original line number Diff line number Diff line
@@ -2241,6 +2241,7 @@ networkstatus_parse_vote_from_string(const char *s, const char **eos_out,
    tor_free(voter->nickname);
    tor_free(voter->address);
    tor_free(voter->contact);
    tor_free(voter->signature);
    tor_free(voter);
  }
  if (rs_tokens) {