mirror of
https://github.com/nginx/nginx.git
synced 2024-12-04 22:09:01 +08:00
QUIC: do not send STOP_SENDING after STREAM fin.
Previously STOP_SENDING was sent to client upon stream closure if rev->eof and rev->error were not set. This was an indirect indication that no RESET_STREAM or STREAM fin has arrived. But it is indeed possible that rev->eof is not set, but STREAM fin has already been received, just not read out by the application. In this case sending STOP_SENDING does not make sense and can be misleading for some clients.
This commit is contained in:
parent
d6065b2791
commit
6983bc0a37
@ -4895,7 +4895,7 @@ ngx_quic_stream_cleanup_handler(void *data)
|
||||
if ((qs->id & NGX_QUIC_STREAM_SERVER_INITIATED) == 0
|
||||
|| (qs->id & NGX_QUIC_STREAM_UNIDIRECTIONAL) == 0)
|
||||
{
|
||||
if (!c->read->eof && !c->read->error) {
|
||||
if (!c->read->pending_eof && !c->read->error) {
|
||||
frame = ngx_quic_alloc_frame(pc, 0);
|
||||
if (frame == NULL) {
|
||||
return;
|
||||
|
Loading…
Reference in New Issue
Block a user