Recheck select succeeds on EWOULDBLOCK for stratum.
diff --git a/util.c b/util.c
index b801280..2f281f3 100644
--- a/util.c
+++ b/util.c
@@ -1099,7 +1099,7 @@ char *recv_line(struct pool *pool)
break;
}
if (n < 0) {
- if (!sock_blocks()) {
+ if (!sock_blocks() || !socket_full(pool, false)) {
ret = RECV_RECVFAIL;
break;
}