diff src/http/ngx_http_parse.c @ 370:9a242235a80a NGINX_0_6_29

nginx 0.6.29 *) Feature: the ngx_google_perftools_module. *) Bugfix: the ngx_http_perl_module could be not built on 64-bit platforms; bug appeared in 0.6.27.
author Igor Sysoev <http://sysoev.ru>
date Tue, 18 Mar 2008 00:00:00 +0300
parents b743d290eb3b
children 79c5df00501e
line wrap: on
line diff
--- a/src/http/ngx_http_parse.c
+++ b/src/http/ngx_http_parse.c
@@ -775,7 +775,7 @@ ngx_http_parse_header_line(ngx_http_requ
             if (c) {
                 hash = ngx_hash(hash, c);
                 r->lowcase_header[i++] = c;
-                i &= ~NGX_HTTP_LC_HEADER_LEN;
+                i &= (NGX_HTTP_LC_HEADER_LEN - 1);
                 break;
             }
 
@@ -882,10 +882,10 @@ ngx_http_parse_header_line(ngx_http_requ
         /* end of header line */
         case sw_almost_done:
             switch (ch) {
+            case LF:
+                goto done;
             case CR:
                 break;
-            case LF:
-                goto done;
             default:
                 return NGX_HTTP_PARSE_INVALID_HEADER;
             }