Blob Blame History Raw
diff -rup c/resolv/res_send.c d/resolv/res_send.c
--- c/resolv/res_send.c	2012-01-01 05:16:32.000000000 -0700
+++ d/resolv/res_send.c	2012-03-30 12:39:30.862467628 -0600
@@ -409,6 +409,7 @@ __libc_res_nsend(res_state statp, const
 	 */
 	if (EXT(statp).nsinit == 0) {
 		unsigned char map[MAXNS];
+		unsigned int ext_total_nscount;
 
 		memset (map, MAXNS, sizeof (map));
 		for (n = 0; n < MAXNS; n++) {
@@ -422,8 +423,9 @@ __libc_res_nsend(res_state statp, const
 			}
 		}
 		n = statp->nscount;
-		if (statp->nscount > EXT(statp).nscount)
-			for (n = EXT(statp).nscount, ns = 0;
+		ext_total_nscount = EXT(statp).nscount + EXT(statp).nscount6;
+		if (statp->nscount > ext_total_nscount)
+			for (n = ext_total_nscount, ns = 0;
 			     n < statp->nscount; n++) {
 				while (ns < MAXNS
 				       && EXT(statp).nsmap[ns] != MAXNS)