summaryrefslogtreecommitdiffhomepage
path: root/src/http
diff options
context:
space:
mode:
Diffstat (limited to 'src/http')
-rw-r--r--src/http/ngx_http_output_filter.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/http/ngx_http_output_filter.c b/src/http/ngx_http_output_filter.c
index 0f5b04c0d..4cd96a975 100644
--- a/src/http/ngx_http_output_filter.c
+++ b/src/http/ngx_http_output_filter.c
@@ -19,8 +19,12 @@ typedef struct {
ngx_hunk_t *hunk;
ngx_chain_t *in;
+
+ /* TODO: out and last_out should be local variables */
ngx_chain_t *out;
ngx_chain_t **last_out;
+ /* */
+
ngx_chain_t *free;
ngx_chain_t *busy;
@@ -180,6 +184,9 @@ int ngx_http_output_filter(ngx_http_request_t *r, ngx_hunk_t *hunk)
#if (NGX_FILE_AIO_READ)
if (rc == NGX_AGAIN) {
+ if (ctx->out) {
+ break;
+ }
return rc;
}
#endif