mirror of
https://github.com/nginx/nginx.git
synced 2025-06-22 13:51:12 +08:00
Free remaining frames on connection close.
Frames can still float in the following queues: - crypto frames reordering queues (one per encryption level) - moved crypto frames cleanup to the moment where all streams are closed - stream frames reordering queues (one per packet number namespace) - frames retransmit queues (one per packet number namespace)
This commit is contained in:
parent
53d47318c5
commit
001b81af88
@ -750,10 +750,6 @@ ngx_quic_close_connection(ngx_connection_t *c)
|
||||
|
||||
if (qc) {
|
||||
|
||||
for (i = 0; i < NGX_QUIC_ENCRYPTION_LAST; i++) {
|
||||
ngx_quic_free_frames(c, &qc->crypto[i].frames);
|
||||
}
|
||||
|
||||
qc->closing = 1;
|
||||
tree = &qc->streams.tree;
|
||||
|
||||
@ -793,6 +789,15 @@ ngx_quic_close_connection(ngx_connection_t *c)
|
||||
return;
|
||||
}
|
||||
|
||||
for (i = 0; i < NGX_QUIC_ENCRYPTION_LAST; i++) {
|
||||
ngx_quic_free_frames(c, &qc->crypto[i].frames);
|
||||
}
|
||||
|
||||
for (i = 0; i < NGX_QUIC_SEND_CTX_LAST; i++) {
|
||||
ngx_quic_free_frames(c, &qc->send_ctx[i].frames);
|
||||
ngx_quic_free_frames(c, &qc->send_ctx[i].sent);
|
||||
}
|
||||
|
||||
if (qc->push.timer_set) {
|
||||
ngx_del_timer(&qc->push);
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user