diff options
Diffstat (limited to 'grp/fgetgrent.c')
-rw-r--r-- | grp/fgetgrent.c | 9 |
1 files changed, 3 insertions, 6 deletions
diff --git a/grp/fgetgrent.c b/grp/fgetgrent.c index d2e3de69a7..245524f178 100644 --- a/grp/fgetgrent.c +++ b/grp/fgetgrent.c @@ -52,8 +52,8 @@ fgetgrent (FILE *stream) } while (buffer != NULL - && __fgetgrent_r (stream, &resbuf, buffer, buffer_size, &result) != 0 - && errno == ERANGE) + && (__fgetgrent_r (stream, &resbuf, buffer, buffer_size, &result) + == ERANGE)) { char *new_buf; buffer_size += NSS_BUFLEN_GROUP; @@ -70,10 +70,7 @@ fgetgrent (FILE *stream) /* Reset the stream. */ if (fsetpos (stream, &pos) != 0) - { - buffer = NULL; - break; - } + buffer = NULL; } if (buffer == NULL) |