From 1e0cd7ae9e561f725a52f6a2607c1e2cc7e82df3 Mon Sep 17 00:00:00 2001 From: Karel Zak Date: Tue, 30 Jun 2015 16:05:03 +0200 Subject: [PATCH] include/all-io: read_all() don't retry on EOF Signed-off-by: Karel Zak --- include/all-io.h | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/include/all-io.h b/include/all-io.h index 2546cff1be..0623692e15 100644 --- a/include/all-io.h +++ b/include/all-io.h @@ -64,8 +64,7 @@ static inline ssize_t read_all(int fd, char *buf, size_t count) while (count > 0) { ret = read(fd, buf, count); if (ret <= 0) { - if ((errno == EAGAIN || errno == EINTR || ret == 0) && - (tries++ < 5)) { + if (ret < 0 && (errno == EAGAIN || errno == EINTR) && (tries++ < 5)) { xusleep(250000); continue; } @@ -80,5 +79,4 @@ static inline ssize_t read_all(int fd, char *buf, size_t count) return c; } - #endif /* UTIL_LINUX_ALL_IO_H */ -- 2.47.2