diff src/http/ngx_http_special_response.c @ 2819:43fe53832da7

handle big responses for "size" and "test" image_filters
author Igor Sysoev <igor@sysoev.ru>
date Fri, 08 May 2009 14:25:51 +0000
parents 3daf68f2efe3
children 26e06e009ced
line wrap: on
line diff
--- a/src/http/ngx_http_special_response.c
+++ b/src/http/ngx_http_special_response.c
@@ -455,11 +455,21 @@ ngx_http_filter_finalize_request(ngx_htt
     /* clear the modules contexts */
     ngx_memzero(r->ctx, sizeof(void *) * ngx_http_max_module);
 
+    r->filter_finalize = 1;
+
     rc = ngx_http_special_response_handler(r, error);
 
     /* NGX_ERROR resets any pending data */
 
-    return (rc == NGX_OK) ? NGX_ERROR : rc;
+    switch (rc) {
+
+    case NGX_OK:
+    case NGX_DONE:
+        return NGX_ERROR;
+
+    default:
+        return rc;
+    }
 }