From: Ulrich Drepper Date: Sun, 25 Sep 2005 22:55:11 +0000 (+0000) Subject: * inet/getnetgrent_r.c (innetgr): Call endfct even if result != 0. X-Git-Tag: upstream/2.20~9402 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=9c5a79048766f0ac89aa84ad0c9a2f6e6dffec17;p=platform%2Fupstream%2Flinaro-glibc.git * inet/getnetgrent_r.c (innetgr): Call endfct even if result != 0. Return 1 only if result == 1. Patch by Benoit Capelle. --- diff --git a/ChangeLog b/ChangeLog index cbef36a..67320a4 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2005-09-24 Jakub Jelinek + + * inet/getnetgrent_r.c (innetgr): Call endfct even if result != 0. + Return 1 only if result == 1. Patch by Benoit Capelle. + 2005-09-25 Ulrich Drepper [BZ #278] diff --git a/inet/getnetgrent_r.c b/inet/getnetgrent_r.c index 4dbccd9..97b2b80 100644 --- a/inet/getnetgrent_r.c +++ b/inet/getnetgrent_r.c @@ -409,9 +409,6 @@ innetgr (const char *netgroup, const char *host, const char *user, } } - if (result != 0) - break; - /* If we found one service which does know the given netgroup we don't try further. */ status = NSS_STATUS_RETURN; @@ -422,6 +419,9 @@ innetgr (const char *netgroup, const char *host, const char *user, if (endfct != NULL) (*endfct) (&entry); + if (result != 0) + break; + /* Look for the next service. */ no_more = __nss_next (&entry.nip, "setnetgrent", &setfct.ptr, status, 0); @@ -444,6 +444,6 @@ innetgr (const char *netgroup, const char *host, const char *user, /* Free the memory. */ free_memory (&entry); - return result; + return result == 1; } libc_hidden_def (innetgr)