X-Git-Url: https://mattmccutchen.net/rsync/rsync.git/blobdiff_plain/9585b27678ee8b94f2f260e8d8d61ff4381f2fa3..ec8637f3679b891041c798400774141024e24a4e:/clientserver.c diff --git a/clientserver.c b/clientserver.c index cb17438b..1e3af63a 100644 --- a/clientserver.c +++ b/clientserver.c @@ -355,8 +355,12 @@ static int read_arg_from_pipe(int fd, char *buf, int limit) char *bp = buf, *eob = buf + limit - 1; while (1) { - if (read(fd, bp, 1) != 1) + int got = read(fd, bp, 1); + if (got != 1) { + if (got < 0 && errno == EINTR) + continue; return -1; + } if (*bp == '\0') break; if (bp < eob)