diff options
-rw-r--r-- | ChangeLog | 3 | ||||
-rw-r--r-- | sysdeps/posix/getaddrinfo.c | 2 |
2 files changed, 5 insertions, 0 deletions
@@ -1,5 +1,8 @@ 2008-12-29 Ulrich Drepper <drepper@redhat.com> + * sysdeps/posix/getaddrinfo.c (gaih_inet): When the + gethostbyname4_r function call succeeded, just leave the loop. + [BZ #9694] * wcsmbs/wchar.h: Move undefs for local __need_* constants to the very end. diff --git a/sysdeps/posix/getaddrinfo.c b/sysdeps/posix/getaddrinfo.c index 6ff0fc4..d346c62 100644 --- a/sysdeps/posix/getaddrinfo.c +++ b/sysdeps/posix/getaddrinfo.c @@ -714,6 +714,8 @@ gaih_inet (const char *name, const struct gaih_service *service, status = DL_CALL_FCT (fct4, (name, pat, tmpbuf, tmpbuflen, &rc, &herrno, NULL)); + if (status == NSS_STATUS_SUCCESS) + break; if (status != NSS_STATUS_TRYAGAIN || rc != ERANGE || herrno != NETDB_INTERNAL) { |