diff --git a/core/reader.c b/core/reader.c index 2b3945c0..c33d0d95 100644 --- a/core/reader.c +++ b/core/reader.c @@ -389,6 +389,8 @@ wait: remains -= len; *rlen += len; continue; + }else if (errno == EAGAIN || errno == EWOULDBLOCK || errno == EINPROGRESS) { + goto wait; } *rlen = -1; if (len == 0) {