Mercurial > hg > nginx-quic
comparison src/http/modules/ngx_http_gzip_filter_module.c @ 597:9262f520ce21 release-0.3.20
nginx-0.3.20-RELEASE import
*) Bugfix: in SSI handling.
*) Bugfix: the ngx_http_memcached_module did not support the keys in
the "/usr?args" form.
author | Igor Sysoev <igor@sysoev.ru> |
---|---|
date | Wed, 11 Jan 2006 15:26:57 +0000 |
parents | d4e858a5751a |
children | e60fe4cf1d4e |
comparison
equal
deleted
inserted
replaced
596:0381e6d3aa70 | 597:9262f520ce21 |
---|---|
97 ngx_conf_check_num_bounds, 1, 9 | 97 ngx_conf_check_num_bounds, 1, 9 |
98 }; | 98 }; |
99 | 99 |
100 static ngx_conf_post_handler_pt ngx_http_gzip_window_p = ngx_http_gzip_window; | 100 static ngx_conf_post_handler_pt ngx_http_gzip_window_p = ngx_http_gzip_window; |
101 static ngx_conf_post_handler_pt ngx_http_gzip_hash_p = ngx_http_gzip_hash; | 101 static ngx_conf_post_handler_pt ngx_http_gzip_hash_p = ngx_http_gzip_hash; |
102 | |
103 | 102 |
104 | 103 |
105 static ngx_conf_enum_t ngx_http_gzip_http_version[] = { | 104 static ngx_conf_enum_t ngx_http_gzip_http_version[] = { |
106 { ngx_string("1.0"), NGX_HTTP_VERSION_10 }, | 105 { ngx_string("1.0"), NGX_HTTP_VERSION_10 }, |
107 { ngx_string("1.1"), NGX_HTTP_VERSION_11 }, | 106 { ngx_string("1.1"), NGX_HTTP_VERSION_11 }, |
281 if (!conf->enable | 280 if (!conf->enable |
282 || (r->headers_out.status != NGX_HTTP_OK | 281 || (r->headers_out.status != NGX_HTTP_OK |
283 && r->headers_out.status != NGX_HTTP_FORBIDDEN | 282 && r->headers_out.status != NGX_HTTP_FORBIDDEN |
284 && r->headers_out.status != NGX_HTTP_NOT_FOUND) | 283 && r->headers_out.status != NGX_HTTP_NOT_FOUND) |
285 || r->header_only | 284 || r->header_only |
286 || r->main != r | 285 || r != r->main |
287 || r->http_version < conf->http_version | 286 || r->http_version < conf->http_version |
288 || r->headers_out.content_type.len == 0 | 287 || r->headers_out.content_type.len == 0 |
289 || (r->headers_out.content_encoding | 288 || (r->headers_out.content_encoding |
290 && r->headers_out.content_encoding->value.len) | 289 && r->headers_out.content_encoding->value.len) |
291 || r->headers_in.accept_encoding == NULL | 290 || r->headers_in.accept_encoding == NULL |
542 if (ngx_http_next_body_filter(r, &out) == NGX_ERROR) { | 541 if (ngx_http_next_body_filter(r, &out) == NGX_ERROR) { |
543 ngx_http_gzip_error(ctx); | 542 ngx_http_gzip_error(ctx); |
544 return NGX_ERROR; | 543 return NGX_ERROR; |
545 } | 544 } |
546 | 545 |
546 r->connection->buffered |= NGX_HTTP_GZIP_BUFFERED; | |
547 | |
547 ctx->last_out = &ctx->out; | 548 ctx->last_out = &ctx->out; |
548 | 549 |
549 ctx->crc32 = crc32(0L, Z_NULL, 0); | 550 ctx->crc32 = crc32(0L, Z_NULL, 0); |
550 ctx->flush = Z_NO_FLUSH; | 551 ctx->flush = Z_NO_FLUSH; |
551 } | 552 } |
797 ctx->zstream.avail_in = 0; | 798 ctx->zstream.avail_in = 0; |
798 ctx->zstream.avail_out = 0; | 799 ctx->zstream.avail_out = 0; |
799 | 800 |
800 ctx->done = 1; | 801 ctx->done = 1; |
801 | 802 |
803 r->connection->buffered &= ~NGX_HTTP_GZIP_BUFFERED; | |
804 | |
802 break; | 805 break; |
803 } | 806 } |
804 | 807 |
805 if (conf->no_buffer && ctx->in == NULL) { | 808 if (conf->no_buffer && ctx->in == NULL) { |
806 | 809 |