36 lines
1 KiB
Diff
36 lines
1 KiB
Diff
--- resolv/res_send.c 2011-06-10 18:59:03.041436996 +1000
|
|
+++ resolv/res_send.c 2011-06-10 19:08:09.379309323 +1000
|
|
@@ -549,7 +549,7 @@
|
|
ns, ansp, ansp2, nansp2, resplen2);
|
|
if (n < 0)
|
|
return (-1);
|
|
- if (n == 0 && (buf2 == NULL || resplen2 == 0))
|
|
+ if (n == 0)
|
|
goto next_ns;
|
|
} else {
|
|
/* Use datagrams. */
|
|
@@ -559,7 +559,7 @@
|
|
ansp2, nansp2, resplen2);
|
|
if (n < 0)
|
|
return (-1);
|
|
- if (n == 0 && (buf2 == NULL || resplen2 == 0))
|
|
+ if (n == 0)
|
|
goto next_ns;
|
|
if (v_circuit)
|
|
// XXX Check whether both requests failed or
|
|
@@ -1275,14 +1275,10 @@
|
|
(*thisresplenp > *thisanssizp)
|
|
? *thisanssizp : *thisresplenp);
|
|
|
|
- if (recvresp1 || (buf2 != NULL && recvresp2)) {
|
|
- *resplen2 = 0;
|
|
+ if (recvresp1 || (buf2 != NULL && recvresp2))
|
|
return resplen;
|
|
- }
|
|
if (buf2 != NULL)
|
|
{
|
|
- /* No data from the first reply. */
|
|
- resplen = 0;
|
|
/* We are waiting for a possible second reply. */
|
|
if (hp->id == anhp->id)
|
|
recvresp1 = 1;
|