chiark / gitweb /
Do not scramble innards when a query on the output queue is cancelled. privaterel-1999-09-25-egnor
authorian <ian>
Sat, 25 Sep 1999 16:25:00 +0000 (16:25 +0000)
committerian <ian>
Sat, 25 Sep 1999 16:25:00 +0000 (16:25 +0000)
changelog
src/check.c
src/query.c

index fc5132788a5401ecdafc4730d154fc20d2d80893..9fba052ddb3fedec2fd14efbced9f411d767b6ed 100644 (file)
--- a/changelog
+++ b/changelog
@@ -18,6 +18,7 @@ adns (0.5) unstable; urgency=medium
   * Reject TXT RRs with no strings.
   * Don't complain so much about poll(2) tests if not available.
   * Do not give -u 0 -g 0 options to install.
+  * Do not scramble innards when a query on the output queue is cancelled.
 
  --
 
@@ -101,4 +102,5 @@ adns (0.1) experimental; urgency=low
 
 Local variables:
 mode: debian-changelog
+fill-column: 75
 End:
index 84fe168cd6cac54259793bde2b0892d8ab099d63..04c5c8e0c30dee087511ae3d0a9ba1400942ef62 100644 (file)
@@ -136,6 +136,7 @@ static void checkc_queue_output(adns_state ads) {
     assert(qu->state == query_done);
     assert(!qu->children.head && !qu->children.tail);
     assert(!qu->parent);
+    assert(!qu->allocations.head && !qu->allocations.tail);
     checkc_query(ads,qu);
   });
 }
index 172ff0607b150e81950276272fb9e22d8ca45671..a676376587ca7053ef758b3511c305d1f0054a38 100644 (file)
@@ -362,6 +362,7 @@ static void free_query_allocs(adns_query qu) {
 
   cancel_children(qu);
   for (an= qu->allocations.head; an; an= ann) { ann= an->next; free(an); }
+  LIST_INIT(qu->allocations);
   adns__vbuf_free(&qu->vb);
 }