From: Vsevolod Stakhov Date: Thu, 21 Aug 2014 15:26:51 +0000 (+0100) Subject: Fix session-less resolver. X-Git-Tag: 0.7.0~115 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=679a5e1f14168b32053b5c72f3115205fdbd0629;p=thirdparty%2Frspamd.git Fix session-less resolver. --- diff --git a/src/libserver/dns.c b/src/libserver/dns.c index aa48777833..1410442b7a 100644 --- a/src/libserver/dns.c +++ b/src/libserver/dns.c @@ -63,15 +63,15 @@ rspamd_dns_callback (struct rdns_reply *reply, gpointer ud) reqdata->cb (reply, reqdata->ud); - /* - * Ref event to avoid double unref by - * event removing - */ - rdns_request_retain (reply->request); if (reqdata->session) { - remove_normal_event (reqdata->session, rspamd_dns_fin_cb, reqdata->req); + /* + * Ref event to avoid double unref by + * event removing + */ + rdns_request_retain (reply->request); + remove_normal_event (reqdata->session, rspamd_dns_fin_cb, reqdata); } - if (reqdata->pool == NULL) { + else if (reqdata->pool == NULL) { g_slice_free1 (sizeof (struct rspamd_dns_request_ud), reqdata); } }