chiark
/
gitweb
/
~mdw
/
adns
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
@@ -10,6 +10,7 @@
[adns]
/
src
/
query.c
diff --git
a/src/query.c
b/src/query.c
index a8423d7c36e3a7bdd6c13c104885d83a10a5bcf3..1fa26f87cbf673868a0b1421ba336fcbfdb1ec8b 100644
(file)
--- a/
src/query.c
+++ b/
src/query.c
@@
-66,7
+66,7
@@
static adns_query query_alloc(adns_state ads, const typeinfo *typei,
adns__vbuf_init(&qu->search_vb);
qu->search_origlen= qu->search_pos= qu->search_doneabs= 0;
adns__vbuf_init(&qu->search_vb);
qu->search_origlen= qu->search_pos= qu->search_doneabs= 0;
- qu->id=
0;
+ qu->id=
-2; /* will be overwritten with real id before we leave adns */
qu->flags= flags;
qu->retries= 0;
qu->udpnextserver= 0;
qu->flags= flags;
qu->retries= 0;
qu->udpnextserver= 0;
@@
-501,6
+501,7
@@
void adns__query_done(adns_query qu) {
adns_answer *ans;
adns_query parent;
adns_answer *ans;
adns_query parent;
+ assert(!qu->ads->bug_if_query_done_now);
cancel_children(qu);
qu->id= -1;
cancel_children(qu);
qu->id= -1;
@@
-542,6
+543,7
@@
void adns__query_done(adns_query qu) {
}
void adns__query_fail(adns_query qu, adns_status stat) {
}
void adns__query_fail(adns_query qu, adns_status stat) {
+ assert(!qu->ads->bug_if_query_done_now);
adns__reset_preserved(qu);
qu->answer->status= stat;
adns__query_done(qu);
adns__reset_preserved(qu);
qu->answer->status= stat;
adns__query_done(qu);