mirror of
https://github.com/nginx/nginx.git
synced 2024-11-25 10:20:21 -06:00
HTTP/2: refactored ngx_http_v2_send_output_queue().
Now it returns NGX_AGAIN if there's still data to be sent.
This commit is contained in:
parent
3b2f54bc2e
commit
3c81c08cea
@ -478,7 +478,7 @@ ngx_http_v2_send_output_queue(ngx_http_v2_connection_t *h2c)
|
||||
wev = c->write;
|
||||
|
||||
if (!wev->ready) {
|
||||
return NGX_OK;
|
||||
return NGX_AGAIN;
|
||||
}
|
||||
|
||||
cl = NULL;
|
||||
@ -549,15 +549,6 @@ ngx_http_v2_send_output_queue(ngx_http_v2_connection_t *h2c)
|
||||
c->tcp_nodelay = NGX_TCP_NODELAY_SET;
|
||||
}
|
||||
|
||||
if (!wev->ready) {
|
||||
ngx_add_timer(wev, clcf->send_timeout);
|
||||
|
||||
} else {
|
||||
if (wev->timer_set) {
|
||||
ngx_del_timer(wev);
|
||||
}
|
||||
}
|
||||
|
||||
for ( /* void */ ; out; out = fn) {
|
||||
fn = out->next;
|
||||
|
||||
@ -582,6 +573,15 @@ ngx_http_v2_send_output_queue(ngx_http_v2_connection_t *h2c)
|
||||
|
||||
h2c->last_out = frame;
|
||||
|
||||
if (!wev->ready) {
|
||||
ngx_add_timer(wev, clcf->send_timeout);
|
||||
return NGX_AGAIN;
|
||||
}
|
||||
|
||||
if (wev->timer_set) {
|
||||
ngx_del_timer(wev);
|
||||
}
|
||||
|
||||
return NGX_OK;
|
||||
|
||||
error:
|
||||
|
Loading…
Reference in New Issue
Block a user