From: Aram Sargsyan Date: Tue, 29 Mar 2022 13:01:24 +0000 (+0000) Subject: Add a missing clear_current_lookup() call in recv_done() X-Git-Tag: v9.19.0~15^2~2 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=2771a5b64da24ddbb385bfb4a5b6e3f5d2363a19;p=thirdparty%2Fbind9.git Add a missing clear_current_lookup() call in recv_done() The error code path handling the `ISC_R_CANCELED` code lacks a `clear_current_lookup()` call, without which dig hangs indefinitely when handling the error. Add the missing call to account for all references of the lookup so it can be destroyed. --- diff --git a/bin/dig/dighost.c b/bin/dig/dighost.c index 35d29eefd8d..721c68f20f8 100644 --- a/bin/dig/dighost.c +++ b/bin/dig/dighost.c @@ -3844,6 +3844,7 @@ recv_done(isc_nmhandle_t *handle, isc_result_t eresult, isc_region_t *region, } query_detach(&query); lookup_detach(&l); + clear_current_lookup(); UNLOCK_LOOKUP; return; }