# Bazaar merge directive format 2 (Bazaar 0.90) # revision_id: squid3@treenet.co.nz-20080323115831-5xle57o2qw90o04q # target_branch: file:///src/squid/bzr/trunk/ # testament_sha1: 667ca44f308a53d0a2a79eb11cc8ad64b41a8fdf # timestamp: 2008-03-24 00:02:13 +1200 # base_revision_id: squid3@treenet.co.nz-20080323114750-\ # jmwa9b7uxeo75wmc # # Begin patch === modified file 'src/dns_internal.cc' --- src/dns_internal.cc 2008-03-16 22:10:18 +0000 +++ src/dns_internal.cc 2008-03-23 11:58:31 +0000 @@ -774,28 +774,26 @@ assert(q->lru.prev == NULL); -try_again: - ns = q->nsends % nns; - - if (q->need_vc) { - idnsSendQueryVC(q, ns); - x = 0; - } else - x = comm_udp_sendto(DnsSocket, - nameservers[ns].S, - q->buf, - q->sz); - - q->nsends++; - - q->sent_t = current_time; - - if (x < 0) { - debugs(50, 1, "idnsSendQuery: FD " << DnsSocket << ": sendto: " << xstrerror()); - - if (q->nsends % nns != 0) - goto try_again; - } else { + do { + ns = q->nsends % nns; + + if (q->need_vc) { + idnsSendQueryVC(q, ns); + x = 0; + } else { + x = comm_udp_sendto(DnsSocket, nameservers[ns].S, q->buf, q->sz); + } + + q->nsends++; + + q->sent_t = current_time; + + if (x < 0) + debugs(50, 1, "idnsSendQuery: FD " << DnsSocket << ": sendto: " << xstrerror()); + + } while( x<0 && q->nsends % nns != 0); + + if(x >= 0) { fd_bytes(DnsSocket, x, FD_WRITE); commSetSelect(DnsSocket, COMM_SELECT_READ, idnsRead, NULL, 0); } # Begin bundle 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