From b1e7e5be5a67fd9c80e0d1a38d3910c7dceda5d1 Mon Sep 17 00:00:00 2001 From: Amos Jeffries Date: Tue, 23 Dec 2008 16:45:29 +1300 Subject: [PATCH] Bug 2227: Sefgaults in MemBuf::reset during idnsSendQuery --- src/dns_internal.cc | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/dns_internal.cc b/src/dns_internal.cc index e179173457..3e41419b37 100644 --- a/src/dns_internal.cc +++ b/src/dns_internal.cc @@ -730,7 +730,9 @@ idnsVCClosed(int fd, void *data) { nsvc * vc = (nsvc *)data; delete vc->queue; + vc->queue = NULL; delete vc->msg; + vc->msg = NULL; nameservers[vc->ns].vc = NULL; cbdataFree(vc); } @@ -783,6 +785,11 @@ idnsSendQueryVC(idns_query * q, int ns) return; } + if(vc->queue == NULL) { + vc->queue = new MemBuf; + vc->queue->init(); + } + vc->queue->reset(); short head = htons(q->sz); -- 2.47.2