From 471ab4dd5bbf752c24fdd11bfcaf163b4769cfce Mon Sep 17 00:00:00 2001 From: Glenn Strauss Date: Tue, 19 Jan 2021 11:58:53 -0500 Subject: [PATCH] [core] fix 100% CPU spin if traffic limit hit (thx Dirk) (reported on FreeBSD) HTTP/1.1 requests might end up spinning if traffic limits are configured (connection.kbytes-per-second) (server.kbytes-per-second) --- src/connections.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/connections.c b/src/connections.c index a87b1bfc..c7716574 100644 --- a/src/connections.c +++ b/src/connections.c @@ -523,7 +523,7 @@ static int connection_handle_write_state(request_st * const r, connection * cons } } while (r->http_version <= HTTP_VERSION_1_1 && (!chunkqueue_is_empty(&r->write_queue) - ? con->is_writable > 0 + ? con->is_writable > 0 && 0 == con->traffic_limit_reached : r->resp_body_finished)); return CON_STATE_WRITE;