From 0fe1d0806cb3f962800d39319c36f50c4e533e76 Mon Sep 17 00:00:00 2001 From: Peter van Dijk Date: Tue, 22 Jan 2013 14:21:06 +0000 Subject: [PATCH] replace previous broken commit with actual fix for trace=fail and trace-regex git-svn-id: svn://svn.powerdns.com/pdns/trunk/pdns@3073 d19b8d6e-7fed-0310-83ef-9ca221ded41b --- pdns/pdns_recursor.cc | 15 +++++++-------- 1 file changed, 7 insertions(+), 8 deletions(-) diff --git a/pdns/pdns_recursor.cc b/pdns/pdns_recursor.cc index dbc29aa68..6b79582f4 100644 --- a/pdns/pdns_recursor.cc +++ b/pdns/pdns_recursor.cc @@ -550,15 +550,8 @@ void startDoResolve(void *p) uint32_t minTTL=std::numeric_limits::max(); - if(res < 0) { - pw.getHeader()->rcode=RCode::ServFail; - // no commit here, because no record - g_stats.servFails++; - } - - if(tracedQuery || pw.getHeader()->rcode == RCode::ServFail) + if(tracedQuery || res < 0 || res == RCode::ServFail || pw.getHeader()->rcode == RCode::ServFail) { - // log trace, if we have one string trace(sr.getTrace()); if(!trace.empty()) { vector lines; @@ -569,6 +562,12 @@ void startDoResolve(void *p) } } } + + if(res < 0) { + pw.getHeader()->rcode=RCode::ServFail; + // no commit here, because no record + g_stats.servFails++; + } else { pw.getHeader()->rcode=res; updateRcodeStats(res); -- 2.40.0