Commit 36620ca0 authored by Nick Mathewson's avatar Nick Mathewson 🏃
Browse files

r9718@catbus: nickm | 2007-01-22 14:13:00 -0500

 Free CACHE_STATE_DONE cached_router_t items on dns_free_all().


svn:r9386
parent 84790d05
......@@ -51,6 +51,8 @@ Changes in version 0.1.2.7-alpha - 2007-??-??
bytes.)
- Fix as-yet-unused reverse IPv6 lookup code so it sends nybbles in the
correct order.
- Free memory held in recently-completed DNS lookup attempts on exit.
This was not a memory leak, but may have been hiding memory leaks.
Changes in version 0.1.2.6-alpha - 2007-01-09
......
......@@ -318,6 +318,21 @@ void
dns_free_all(void)
{
cached_resolve_t **ptr, **next, *item;
if (cached_resolve_pqueue) {
SMARTLIST_FOREACH(cached_resolve_pqueue, cached_resolve_t *, res,
{
/* XXXX012 The hach lookups here could be quite slow; remove them
* once we're happy. */
if (res->state == CACHE_STATE_DONE) {
cached_resolve_t *removed = HT_REMOVE(cache_map, &cache_root, res);
tor_assert(!removed);
_free_cached_resolve(res);
} else {
cached_resolve_t *found = HT_FIND(cache_map, &cache_root, res);
tor_assert(found);
}
});
}
for (ptr = HT_START(cache_map, &cache_root); ptr != NULL; ptr = next) {
item = *ptr;
next = HT_NEXT_RMV(cache_map, &cache_root, ptr);
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment