summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/passwd/getgrent_a.c2
-rw-r--r--src/passwd/getpwent_a.c2
2 files changed, 2 insertions, 2 deletions
diff --git a/src/passwd/getgrent_a.c b/src/passwd/getgrent_a.c
index bafc9ed2..ecd2f2ea 100644
--- a/src/passwd/getgrent_a.c
+++ b/src/passwd/getgrent_a.c
@@ -18,7 +18,7 @@ int __getgrent_a(FILE *f, struct group *gr, char **line, size_t *size, char ***m
pthread_setcancelstate(PTHREAD_CANCEL_DISABLE, &cs);
for (;;) {
if ((l=getline(line, size, f)) < 0) {
- rv = errno;
+ rv = ferror(f) ? errno : 0;
free(*line);
*line = 0;
gr = 0;
diff --git a/src/passwd/getpwent_a.c b/src/passwd/getpwent_a.c
index 4d84f0d5..d1b4b53c 100644
--- a/src/passwd/getpwent_a.c
+++ b/src/passwd/getpwent_a.c
@@ -17,7 +17,7 @@ int __getpwent_a(FILE *f, struct passwd *pw, char **line, size_t *size, struct p
pthread_setcancelstate(PTHREAD_CANCEL_DISABLE, &cs);
for (;;) {
if ((l=getline(line, size, f)) < 0) {
- rv = errno;
+ rv = ferror(f) ? errno : 0;
free(*line);
*line = 0;
pw = 0;