about summary refs log tree commit diff
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>2009-04-16 14:29:34 +0000
committerUlrich Drepper <drepper@redhat.com>2009-04-16 14:29:34 +0000
commitd0e81f10e56640c5d3a26997d8c31e2126aa4cea (patch)
tree31adf0227931a80f6359cf85437e0c99a3028072
parente775ec11c449ab573ad4357b6e48a9aada983e0f (diff)
downloadglibc-d0e81f10e56640c5d3a26997d8c31e2126aa4cea.tar.gz
glibc-d0e81f10e56640c5d3a26997d8c31e2126aa4cea.tar.xz
glibc-d0e81f10e56640c5d3a26997d8c31e2126aa4cea.zip
* resolv/res_send.c (send_dg): Don't switch into single-request
	mode if we already are in it.
-rw-r--r--ChangeLog5
-rw-r--r--resolv/res_send.c4
2 files changed, 8 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index 5fa4d3d371..d7abd8a13c 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2009-04-16  Ulrich Drepper  <drepper@redhat.com>
+
+	* resolv/res_send.c (send_dg): Don't switch into single-request
+	mode if we already are in it.
+
 2009-04-15  Ulrich Drepper  <drepper@redhat.com>
 
 	* sysdeps/unix/sysv/linux/getsysstats.c (next_line): Make sure there
diff --git a/resolv/res_send.c b/resolv/res_send.c
index 0490b52fca..a339c2be51 100644
--- a/resolv/res_send.c
+++ b/resolv/res_send.c
@@ -1048,7 +1048,9 @@ send_dg(res_state statp,
 	}
 	if (n == 0) {
 		Dprint(statp->options & RES_DEBUG, (stdout, ";; timeout\n"));
-		if (resplen > 1 && (recvresp1 || (buf2 != NULL && recvresp2)))
+		if (!single_request
+		    && resplen > 1
+		    && (recvresp1 || (buf2 != NULL && recvresp2)))
 		  {
 		    /* There are quite a few broken name servers out
 		       there which don't handle two outstanding