extracted from 7.62
diff -rpU10 nginx-0.7.61/src/http/ngx_http_parse.c nginx-0.7.62/src/http/ngx_http_parse.c --- nginx-0.7.61/src/http/ngx_http_parse.c 2009-04-23 18:38:59.000000000 +0200 +++ nginx-0.7.62/src/http/ngx_http_parse.c 2009-09-07 13:11:24.000000000 +0200 @@ -732,33 +732,33 @@ ngx_http_parse_header_line(ngx_http_requ hash = r->header_hash; i = r->lowcase_index; for (p = b->pos; p < b->last; p++) { ch = *p; switch (state) { /* first char */ case sw_start: + r->header_name_start = p; r->invalid_header = 0; switch (ch) { case CR: r->header_end = p; state = sw_header_almost_done; break; case LF: r->header_end = p; goto header_done; default: state = sw_name; - r->header_name_start = p; c = lowcase[ch]; if (c) { hash = ngx_hash(0, c); r->lowcase_header[0] = c; i = 1; break; }