From: George Thessalonikefs Date: Thu, 6 Feb 2020 10:44:48 +0000 (+0100) Subject: - Fix num_reply_states and num_detached_states counting with X-Git-Tag: release-1.10.0rc1~15 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=0758d2932474f9892644bcda7c2d71a23f501b6b;p=thirdparty%2Funbound.git - Fix num_reply_states and num_detached_states counting with serve_expired_callback. --- diff --git a/doc/Changelog b/doc/Changelog index 44bfffd7a..9fe7f3cc5 100644 --- a/doc/Changelog +++ b/doc/Changelog @@ -1,3 +1,7 @@ +6 February 2020: George + - Fix num_reply_states and num_detached_states counting with + serve_expired_callback. + 6 February 2020: Wouter - Fix num_reply_addr counting in mesh and tcp drop due to size after serve_stale commit. diff --git a/services/mesh.c b/services/mesh.c index 3e501e782..485588438 100644 --- a/services/mesh.c +++ b/services/mesh.c @@ -1971,6 +1971,13 @@ mesh_serve_expired_callback(void* arg) r = mstate->reply_list; mstate->reply_list = NULL; + if(!mstate->reply_list && !mstate->cb_list) { + log_assert(mesh->num_reply_states > 0); + mesh->num_reply_states--; + if(mstate->super_set.count == 0) { + mesh->num_detached_states++; + } + } for(; r; r = r->next) { /* If address info is returned, it means the action should be an * 'inform' variant and the information should be logged. */ @@ -2018,11 +2025,4 @@ mesh_serve_expired_callback(void* arg) qstate->env->mesh->num_detached_states++; mesh_do_callback(mstate, LDNS_RCODE_NOERROR, msg->rep, c); } - if(!mstate->reply_list && !mstate->cb_list) { - log_assert(mesh->num_reply_states > 0); - mesh->num_reply_states--; - if(mstate->super_set.count == 0) { - mesh->num_detached_states++; - } - } }