changeset 5045:63a6b6d70826 stable-1.2

Merge of r4966: gzip: fixed zlib memLevel adjusting. An incorrect memLevel (lower than 1) might be passed to deflateInit2() if the "gzip_hash" directive is set to a value less than the value of "gzip_window" directive. This resulted in "deflateInit2() failed: -2" alert and an empty reply.
author Maxim Dounin <mdounin@mdounin.ru>
date Sun, 10 Feb 2013 03:52:26 +0000
parents 48d1606107d4
children f4809ba58b15
files src/http/modules/ngx_http_gzip_filter_module.c
diffstat 1 files changed, 4 insertions(+), 0 deletions(-) [+]
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
@@ -497,6 +497,10 @@ ngx_http_gzip_filter_memory(ngx_http_req
             wbits--;
             memlevel--;
         }
+
+        if (memlevel < 1) {
+            memlevel = 1;
+        }
     }
 
     ctx->wbits = wbits;