diff options
author | Igor Sysoev <igor@sysoev.ru> | 2003-12-02 16:57:05 +0000 |
---|---|---|
committer | Igor Sysoev <igor@sysoev.ru> | 2003-12-02 16:57:05 +0000 |
commit | 7adb8c0e8fa58c51dfaf2a563b2216e7d678435c (patch) | |
tree | 3f61b70ce3387252971c47f13629e0fab52838c9 /src | |
parent | a7dcbaf4ff0ce7ee3ce0e7d767cf86a25f661849 (diff) | |
download | nginx-7adb8c0e8fa58c51dfaf2a563b2216e7d678435c.tar.gz nginx-7adb8c0e8fa58c51dfaf2a563b2216e7d678435c.zip |
nginx-0.0.1-2003-12-02-19:57:05 import
Diffstat (limited to 'src')
-rw-r--r-- | src/http/ngx_http_parse.c | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/src/http/ngx_http_parse.c b/src/http/ngx_http_parse.c index dd97433ed..5dc0bc3bd 100644 --- a/src/http/ngx_http_parse.c +++ b/src/http/ngx_http_parse.c @@ -797,6 +797,12 @@ ngx_log_debug(r->connection->log, "S: %d UN: '%x:%c', URI: '%c'" _ case sw_quoted_second: if (ch >= '0' && ch <= '9') { ch = (decoded << 4) + ch - '0'; + if (ch == '%') { + state = sw_usual; + *u++ = ch; + ch = *p++; + break; + } state = quoted_state; break; } @@ -804,6 +810,12 @@ ngx_log_debug(r->connection->log, "S: %d UN: '%x:%c', URI: '%c'" _ c = ch | 0x20; if (c >= 'a' && c <= 'f') { ch = (decoded << 4) + c - 'a' + 10; + if (ch == '%') { + state = sw_usual; + *u++ = ch; + ch = *p++; + break; + } state = quoted_state; break; } |