diff options
| author | Igor Sysoev <igor@sysoev.ru> | 2003-01-24 16:09:40 +0000 |
|---|---|---|
| committer | Igor Sysoev <igor@sysoev.ru> | 2003-01-24 16:09:40 +0000 |
| commit | 830c4ce7afd0da40a06d47c176534a5fa03c0b36 (patch) | |
| tree | 0448c34b3071f16c8f921ac0e1142bccee7f85bb /src/http/ngx_http_event.c | |
| parent | 404326f68ffe52b6f166ac961f01bb8889945fa8 (diff) | |
| download | nginx-830c4ce7afd0da40a06d47c176534a5fa03c0b36.tar.gz nginx-830c4ce7afd0da40a06d47c176534a5fa03c0b36.tar.bz2 | |
nginx-0.0.1-2003-01-24-19:09:40 import
Diffstat (limited to '')
| -rw-r--r-- | src/http/ngx_http_event.c | 25 |
1 files changed, 18 insertions, 7 deletions
diff --git a/src/http/ngx_http_event.c b/src/http/ngx_http_event.c index b30050561..679210558 100644 --- a/src/http/ngx_http_event.c +++ b/src/http/ngx_http_event.c @@ -241,16 +241,27 @@ static int ngx_http_process_request_header(ngx_event_t *ev) } while (rc == NGX_AGAIN && r->header_in->pos.mem < r->header_in->last.mem); - if (r->header_timeout) { - r->header_timeout = 0; - ngx_del_timer(ev); - ngx_add_timer(ev, ngx_http_client_header_timeout); - } + if (rc == NGX_OK) { + /* HTTP header done */ + + if (r->header_timeout) { + r->header_timeout = 0; + ngx_del_timer(ev); + ngx_add_timer(ev, ngx_http_client_header_timeout); + } - if (rc == NGX_OK) return ngx_http_event_request_handler(r); - else + + } else { + + if (r->header_timeout) { + r->header_timeout = 0; + ngx_del_timer(ev); + ngx_add_timer(ev, ngx_http_client_header_timeout); + } + return rc; + } } |
