mirror of
https://github.com/nginx/nginx.git
synced 2024-12-13 02:39:00 +08:00
Gzip: fixed setting of NGX_HTTP_GZIP_BUFFERED.
In r2411 setting of NGX_HTTP_GZIP_BUFFERED in c->buffered was moved from ngx_http_gzip_filter_deflate_start() to ngx_http_gzip_filter_buffer() since it was always called first. But in r2543 the "postpone_gzipping" directive was introduced, and if postponed gzipping is disabled (the default setting), ngx_http_gzip_filter_buffer() is not called at all. We must always set NGX_HTTP_GZIP_BUFFERED after the start of compression since there is always a trailer that is buffered. There are no known cases when it leads to any problem with current code. But we already had troubles in upcoming SPDY implementation.
This commit is contained in:
parent
8fbef4841f
commit
b8cba361f7
@ -620,6 +620,8 @@ ngx_http_gzip_filter_deflate_start(ngx_http_request_t *r,
|
|||||||
return NGX_ERROR;
|
return NGX_ERROR;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
r->connection->buffered |= NGX_HTTP_GZIP_BUFFERED;
|
||||||
|
|
||||||
ctx->last_out = &ctx->out;
|
ctx->last_out = &ctx->out;
|
||||||
ctx->crc32 = crc32(0L, Z_NULL, 0);
|
ctx->crc32 = crc32(0L, Z_NULL, 0);
|
||||||
ctx->flush = Z_NO_FLUSH;
|
ctx->flush = Z_NO_FLUSH;
|
||||||
|
Loading…
Reference in New Issue
Block a user