From: antirez Date: Fri, 11 May 2012 08:45:12 +0000 (+0200) Subject: redis-cli pipe mode: handle EAGAIN while writing to socket. X-Git-Url: https://git.saurik.com/redis.git/commitdiff_plain/346825c7ed8e5e57704ff2603a51435249b7c59e?hp=-c redis-cli pipe mode: handle EAGAIN while writing to socket. --- 346825c7ed8e5e57704ff2603a51435249b7c59e diff --git a/src/redis-cli.c b/src/redis-cli.c index 1603c2d0..1b3c0c74 100644 --- a/src/redis-cli.c +++ b/src/redis-cli.c @@ -1052,9 +1052,13 @@ static void pipeMode(void) { ssize_t nwritten = write(fd,obuf+obuf_pos,obuf_len); if (nwritten == -1) { - fprintf(stderr, "Error writing to the server: %s\n", - strerror(errno)); - exit(1); + if (errno != EAGAIN) { + fprintf(stderr, "Error writing to the server: %s\n", + strerror(errno)); + exit(1); + } else { + nwritten = 0; + } } obuf_len -= nwritten; obuf_pos += nwritten;