changeset 9005:e56a05d6dbd1 quic

QUIC: fixed resetting stream wev->ready flag. Previously, the flag could be reset after send_chain() with a limit, even though there was room for more data. The application then started waiting for a write event notification, which never happened. Now the wev->ready flag is only reset when flow control is exhausted.
author Roman Arutyunyan <arut@nginx.com>
date Wed, 09 Feb 2022 14:49:05 +0300
parents dde5cb0205ef
children 5f78174d1ac1
files src/event/quic/ngx_event_quic_streams.c
diffstat 1 files changed, 1 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/src/event/quic/ngx_event_quic_streams.c
+++ b/src/event/quic/ngx_event_quic_streams.c
@@ -883,7 +883,7 @@ ngx_quic_stream_send_chain(ngx_connectio
 
     ngx_quic_queue_frame(qc, frame);
 
-    if (in) {
+    if (flow == (off_t) n) {
         wev->ready = 0;
     }