diff src/http/modules/ngx_http_gzip_filter_module.c @ 346:05693816539c NGINX_0_6_17

nginx 0.6.17 *) Feature: the "If-Range" request header line support. Thanks to Alexander V. Inyukhin. *) Bugfix: URL double escaping in a redirect of the "msie_refresh" directive; bug appeared in 0.6.4. *) Bugfix: the "autoindex" directive did not work with the "alias /" directive. *) Bugfix: a segmentation fault might occur in worker process if subrequests were used. *) Bugfix: the big responses may be transferred truncated if SSL and gzip were used. *) Bugfix: the $status variable was equal to 0 if a proxied server returned response in HTTP/0.9 version.
author Igor Sysoev <http://sysoev.ru>
date Thu, 15 Nov 2007 00:00:00 +0300
parents 4276c2f1f434
children 9121a0a91f47
line wrap: on
line diff
--- a/src/http/modules/ngx_http_gzip_filter_module.c
+++ b/src/http/modules/ngx_http_gzip_filter_module.c
@@ -837,12 +837,15 @@ ngx_http_gzip_body_filter(ngx_http_reque
             }
         }
 
-        if (last == NGX_AGAIN && !ctx->done) {
-            return NGX_AGAIN;
-        }
+        if (ctx->out == NULL) {
 
-        if (ctx->out == NULL && ctx->busy == NULL) {
-            return NGX_OK;
+            if (last == NGX_AGAIN) {
+                return NGX_AGAIN;
+            }
+
+            if (ctx->busy == NULL) {
+                return NGX_OK;
+            }
         }
 
         last = ngx_http_next_body_filter(r, ctx->out);