util: fix error checking after fgets()

fgets() does not set errno on EOF.
This commit is contained in:
Michal Schmidt
2011-12-03 02:08:52 +01:00
parent 91b684c730
commit 35d50f55f3
+4 -4
View File
@@ -516,7 +516,7 @@ int get_parent_of_pid(pid_t pid, pid_t *_ppid) {
return -errno;
if (!(fgets(line, sizeof(line), f))) {
r = -errno;
r = feof(f) ? -EIO : -errno;
fclose(f);
return r;
}
@@ -561,7 +561,7 @@ int get_starttime_of_pid(pid_t pid, unsigned long long *st) {
return -errno;
if (!(fgets(line, sizeof(line), f))) {
r = -errno;
r = feof(f) ? -EIO : -errno;
fclose(f);
return r;
}
@@ -708,7 +708,7 @@ int read_one_line_file(const char *fn, char **line) {
return -errno;
if (!(fgets(t, sizeof(t), f))) {
r = -errno;
r = feof(f) ? -EIO : -errno;
goto finish;
}
@@ -3266,7 +3266,7 @@ int get_ctty_devnr(pid_t pid, dev_t *d) {
return -errno;
if (!fgets(line, sizeof(line), f)) {
k = -errno;
k = feof(f) ? -EIO : -errno;
fclose(f);
return k;
}