summary refs log tree commit diff
path: root/resolv/res_send.c
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>2001-01-05 02:36:27 +0000
committerUlrich Drepper <drepper@redhat.com>2001-01-05 02:36:27 +0000
commit03fbfeb50862cc05552c55c20207d54889416628 (patch)
treeb2cc0bd90970c63ca373ac2745fe3fb7760be654 /resolv/res_send.c
parent06a60d9c89f6cdb2a2ac944bd8b1ddb632b6ceca (diff)
downloadglibc-03fbfeb50862cc05552c55c20207d54889416628.tar.gz
glibc-03fbfeb50862cc05552c55c20207d54889416628.tar.xz
glibc-03fbfeb50862cc05552c55c20207d54889416628.zip
Update.
2001-01-03  Jakub Jelinek  <jakub@redhat.com>

	* resolv/resolv.h (struct __res_state): Add nsinit field.
	* resolv/res_send.c (res_nsend): Use it instead of nscount.
	* resolv/res_init.c (__res_vinit): Initialize it.
	(res_nclose): Clear it instead of nscount.

	* malloc/mtrace.pl: Fix matching of addresses.
	Patch by Aharon Robbins <arnold@skeeve.com>.
Diffstat (limited to 'resolv/res_send.c')
-rw-r--r--resolv/res_send.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/resolv/res_send.c b/resolv/res_send.c
index cc9fd0070d..751a5506a1 100644
--- a/resolv/res_send.c
+++ b/resolv/res_send.c
@@ -394,7 +394,7 @@ res_nsend(res_state statp,
 	 * If the ns_addr_list in the resolver context has changed, then
 	 * invalidate our cached copy and the associated timing data.
 	 */
-	if (EXT(statp).nscount != 0) {
+	if (EXT(statp).nsinit) {
 		int needclose = 0;
 
 		if (EXT(statp).nscount != statp->nscount)
@@ -420,7 +420,7 @@ res_nsend(res_state statp,
 	/*
 	 * Maybe initialize our private copy of the ns_addr_list.
 	 */
-	if (EXT(statp).nscount == 0) {
+	if (EXT(statp).nsinit == 0) {
 #ifdef _LIBC
 		n = 0;
 #endif
@@ -454,6 +454,7 @@ res_nsend(res_state statp,
 #endif
 		}
 		EXT(statp).nscount = statp->nscount;
+		EXT(statp).nsinit = 1;
 #ifdef _LIBC
 		/* If holes left, free memory and set to NULL */
 		while (n < MAXNS) {