summaryrefslogtreecommitdiffhomepage
path: root/src/http/ngx_http_parse.c
diff options
context:
space:
mode:
authorIgor Sysoev <igor@sysoev.ru>2007-12-12 20:43:39 +0000
committerIgor Sysoev <igor@sysoev.ru>2007-12-12 20:43:39 +0000
commit932a8a18df48a7cde5b5163d3428414586bf7066 (patch)
tree69f647db0d2ee00f7ff7cd1515d7efe636017447 /src/http/ngx_http_parse.c
parent5f9301abf71a3bb48a8864daa78a9dcfe8a6a27e (diff)
downloadnginx-932a8a18df48a7cde5b5163d3428414586bf7066.tar.gz
nginx-932a8a18df48a7cde5b5163d3428414586bf7066.tar.bz2
merge_slashes
Diffstat (limited to 'src/http/ngx_http_parse.c')
-rw-r--r--src/http/ngx_http_parse.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/http/ngx_http_parse.c b/src/http/ngx_http_parse.c
index 40e7700d3..256bd9be9 100644
--- a/src/http/ngx_http_parse.c
+++ b/src/http/ngx_http_parse.c
@@ -908,7 +908,7 @@ header_done:
ngx_int_t
-ngx_http_parse_complex_uri(ngx_http_request_t *r)
+ngx_http_parse_complex_uri(ngx_http_request_t *r, ngx_uint_t merge_slashes)
{
u_char c, ch, decoded, *p, *u;
enum {
@@ -1016,8 +1016,12 @@ ngx_http_parse_complex_uri(ngx_http_request_t *r)
switch(ch) {
#if (NGX_WIN32)
case '\\':
+ break;
#endif
case '/':
+ if (merge_slashes) {
+ *u++ = ch;
+ }
break;
case '.':
state = sw_dot;