From ef70bd4a40def77aedf73b93368d0cc8b43871af Mon Sep 17 00:00:00 2001 From: Oswald Buddenhagen Date: Sun, 15 Feb 2015 11:39:38 +0100 Subject: [PATCH] don't try to flush if there is nothing to flush zlib reports Z_BUF_ERROR when a flush is attempted without any activity since the previous flush (if any). while this is harmless as such, discerning the condition from genuine errors would be much harder than avoiding the pointless flush in the first place. REFMAIL: eb5681612f17be777bc8d138d31dd6d6@mpcjanssen.nl --- src/socket.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/socket.c b/src/socket.c index 56e041a..b376d73 100644 --- a/src/socket.c +++ b/src/socket.c @@ -812,7 +812,7 @@ socket_write( conn_t *conn, conn_iovec_t *iov, int iovcnt ) for (i = 0; i < iovcnt; i++) total += iov[i].len; - if (total >= WRITE_CHUNK_SIZE) { + if (total >= WRITE_CHUNK_SIZE && pending_wakeup( &conn->fd_fake )) { /* If the new data is too big, queue the pending buffer to avoid latency. */ do_flush( conn ); }