diff --git a/modules/bindbackend/bindbackend2.cc b/modules/bindbackend/bindbackend2.cc index 837fd509f6ed..c7cec262bf1d 100644 --- a/modules/bindbackend/bindbackend2.cc +++ b/modules/bindbackend/bindbackend2.cc @@ -1015,17 +1015,9 @@ void Bind2Backend::lookup(const QType &qtype, const DNSName &qname, DNSPacket *p bool found=false; BB2DomainInfo bbd; - if (zoneId != -1) { - found = safeGetBBDomainInfo(zoneId, &bbd); - if (found) { - domain = bbd.d_name; - } - } - else { - do { - found = safeGetBBDomainInfo(domain, &bbd); - } while (!found && domain.chopOff()); - } + do { + found = safeGetBBDomainInfo(domain, &bbd); + } while ((!found || (zoneId != (int)bbd.d_id && zoneId != -1)) && domain.chopOff()); if(!found) { if(mustlog)