Mercurial > hg > nginx-vendor-1-0
diff src/http/ngx_http_core_module.c @ 494:499474178a11 NGINX_0_7_59
nginx 0.7.59
*) Feature: the "proxy_cache_methods" and "fastcgi_cache_methods"
directives.
*) Bugfix: socket leak; the bug had appeared in 0.7.25.
Thanks to Maxim Dounin.
*) Bugfix: a segmentation fault occurred in worker process,
if a request had no body and the $request_body variable was used;
the bug had appeared in 0.7.58.
*) Bugfix: the SSL modules might not built on Solaris and Linux;
the bug had appeared in 0.7.58.
*) Bugfix: ngx_http_xslt_filter_module responses were not handled by
SSI, charset, and gzip filters.
*) Bugfix: a "charset" directive did not set a charset to
ngx_http_gzip_static_module responses.
author | Igor Sysoev <http://sysoev.ru> |
---|---|
date | Mon, 25 May 2009 00:00:00 +0400 |
parents | 98143f74eb3d |
children | f39b9e29530d |
line wrap: on
line diff
--- a/src/http/ngx_http_core_module.c +++ b/src/http/ngx_http_core_module.c @@ -1530,38 +1530,38 @@ ngx_http_core_find_static_location(ngx_h void * ngx_http_test_content_type(ngx_http_request_t *r, ngx_hash_t *types_hash) { - u_char c, *p; - ngx_uint_t i, hash; + u_char c, *lowcase; + size_t len; + ngx_uint_t i, hash; if (r->headers_out.content_type.len == 0) { return NULL; } + len = r->headers_out.content_type_len; + if (r->headers_out.content_type_lowcase == NULL) { - p = ngx_pnalloc(r->pool, r->headers_out.content_type_len); - - if (p == NULL) { + lowcase = ngx_pnalloc(r->pool, len); + if (lowcase == NULL) { return NULL; } - r->headers_out.content_type_lowcase = p; + r->headers_out.content_type_lowcase = lowcase; hash = 0; - for (i = 0; i < r->headers_out.content_type_len; i++) { + for (i = 0; i < len; i++) { c = ngx_tolower(r->headers_out.content_type.data[i]); hash = ngx_hash(hash, c); - *p++ = c; + lowcase[i] = c; } r->headers_out.content_type_hash = hash; } - return ngx_hash_find(types_hash, - r->headers_out.content_type_hash, - r->headers_out.content_type_lowcase, - r->headers_out.content_type_len); + return ngx_hash_find(types_hash, r->headers_out.content_type_hash, + r->headers_out.content_type_lowcase, len); }