diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/event/ngx_event_proxy.c | 4 | ||||
-rw-r--r-- | src/http/ngx_http_request.c | 3 |
2 files changed, 6 insertions, 1 deletions
diff --git a/src/event/ngx_event_proxy.c b/src/event/ngx_event_proxy.c index c6bd8a373..a683be3c9 100644 --- a/src/event/ngx_event_proxy.c +++ b/src/event/ngx_event_proxy.c @@ -246,7 +246,9 @@ int ngx_event_proxy_write_to_downstream(ngx_event_proxy_t *p) } else if (!p->cachable && p->in) { out = p->in; - if (p->busy_len + ngx_hunk_size(out->hunk) > p->max_busy_len) { + if (!(p->upstream_eof || p->upstream_error || p->upstream_done) + && (p->busy_len + ngx_hunk_size(out->hunk) > p->max_busy_len)) + { break; } diff --git a/src/http/ngx_http_request.c b/src/http/ngx_http_request.c index 71b1c21cf..f972402b7 100644 --- a/src/http/ngx_http_request.c +++ b/src/http/ngx_http_request.c @@ -721,7 +721,10 @@ static ssize_t ngx_http_read_request_header(ngx_http_request_t *r) n = r->header_in->last - r->header_in->pos; if (n > 0) { +#if 0 + /* TODO: THINK - AIO ??? */ rev->ready = 0; +#endif return n; } |