comparison src/http/ngx_http_upstream.c @ 1063:e2a6ecc5a3ae

a non-active client connection must not closed after send timeout
author Igor Sysoev <igor@sysoev.ru>
date Fri, 19 Jan 2007 12:22:32 +0000
parents bf1785dfb75f
children 7c84c877f2d7
comparison
equal deleted inserted replaced
1062:bc9751affada 1063:e2a6ecc5a3ae
1698 ngx_http_upstream_finalize_request(r, u, 0); 1698 ngx_http_upstream_finalize_request(r, u, 0);
1699 return; 1699 return;
1700 } 1700 }
1701 } 1701 }
1702 1702
1703 if (downstream->write->active) { 1703 if (downstream->write->active && !downstream->write->ready) {
1704 ngx_add_timer(downstream->write, clcf->send_timeout); 1704 ngx_add_timer(downstream->write, clcf->send_timeout);
1705 1705
1706 } else if (downstream->write->timer_set) { 1706 } else if (downstream->write->timer_set) {
1707 ngx_del_timer(downstream->write); 1707 ngx_del_timer(downstream->write);
1708 } 1708 }
1710 if (ngx_handle_read_event(upstream->read, 0) == NGX_ERROR) { 1710 if (ngx_handle_read_event(upstream->read, 0) == NGX_ERROR) {
1711 ngx_http_upstream_finalize_request(r, u, 0); 1711 ngx_http_upstream_finalize_request(r, u, 0);
1712 return; 1712 return;
1713 } 1713 }
1714 1714
1715 if (upstream->read->active) { 1715 if (upstream->read->active && !upstream->read->ready) {
1716 ngx_add_timer(upstream->read, u->conf->read_timeout); 1716 ngx_add_timer(upstream->read, u->conf->read_timeout);
1717 1717
1718 } else if (upstream->read->timer_set) { 1718 } else if (upstream->read->timer_set) {
1719 ngx_del_timer(upstream->read); 1719 ngx_del_timer(upstream->read);
1720 } 1720 }