From: Volker Lendecke Date: Fri, 7 Aug 2015 05:58:20 +0000 (+0200) Subject: dns_server: Don't call tevent_req_finish twice X-Git-Tag: talloc-2.1.4~423 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=938636886c0bb2c0cc66976c4c6dc763d589335c;p=thirdparty%2Fsamba.git dns_server: Don't call tevent_req_finish twice Both tevent_req_werror and tevent_req_done call tevent_req_finish on a request. This should not be done. We should only call either of both. Signed-off-by: Volker Lendecke Reviewed-by: Ralph Boehme --- diff --git a/source4/dns_server/dns_query.c b/source4/dns_server/dns_query.c index 94f5d49ec21..5ddfb0ac3ce 100644 --- a/source4/dns_server/dns_query.c +++ b/source4/dns_server/dns_query.c @@ -673,11 +673,15 @@ struct tevent_req *dns_server_process_query_send( err = handle_question(dns, state, &in->questions[0], &state->answers, &state->ancount, &state->nsrecs, &state->nscount); + + if (W_ERROR_EQUAL(err, DNS_ERR(NAME_ERROR))) { + err = WERR_OK; + } + if (tevent_req_werror(req, err)) { - if (!W_ERROR_EQUAL(err, DNS_ERR(NAME_ERROR))) { - return tevent_req_post(req, ev); - } + return tevent_req_post(req, ev); } + tevent_req_done(req); return tevent_req_post(req, ev); }