diff options
author | Igor Sysoev <igor@sysoev.ru> | 2005-12-16 15:07:08 +0000 |
---|---|---|
committer | Igor Sysoev <igor@sysoev.ru> | 2005-12-16 15:07:08 +0000 |
commit | 2402502c2f35b831ee89369a532b1ff4e4e19947 (patch) | |
tree | 37fb834956f497f8b2d2862c6c3514e1a25bfb37 /src/core/ngx_string.c | |
parent | 74297c285ef173784cac505fd406267ac7c8d3c7 (diff) | |
download | nginx-2402502c2f35b831ee89369a532b1ff4e4e19947.tar.gz nginx-2402502c2f35b831ee89369a532b1ff4e4e19947.zip |
nginx-0.3.16-RELEASE importrelease-0.3.16
*) Feature: the ngx_http_map_module.
*) Feature: the "types_hash_max_size" and "types_hash_bucket_size"
directives.
*) Feature: the "ssi_value_length" directive.
*) Feature: the "worker_rlimit_core" directive.
*) Workaround: the connection number in logs was always 1 if nginx was
built by the icc 8.1 or 9.0 compilers with optimization for
Pentium 4.
*) Bugfix: the "config timefmt" SSI command set incorrect time format.
*) Bugfix: nginx did not close connection to IMAP/POP3 backend for the
SSL connections; the bug had appeared in 0.3.13.
Thanks to Rob Mueller.
*) Bugfix: segmentation fault may occurred in at SSL shutdown; the bug
had appeared in 0.3.13.
Diffstat (limited to 'src/core/ngx_string.c')
-rw-r--r-- | src/core/ngx_string.c | 15 |
1 files changed, 7 insertions, 8 deletions
diff --git a/src/core/ngx_string.c b/src/core/ngx_string.c index f042d7c33..2bb335a07 100644 --- a/src/core/ngx_string.c +++ b/src/core/ngx_string.c @@ -980,20 +980,21 @@ ngx_unescape_uri(u_char **dst, u_char **src, size_t size) break; } - /* skip the invalid quoted character */ + /* the invalid quoted character */ - s++; - size--; + state = sw_usual; + + *d++ = ch; break; case sw_quoted_second: + state = sw_usual; + if (ch >= '0' && ch <= '9') { ch = (u_char) ((decoded << 4) + ch - '0'); - state = sw_usual; - if (ch > '%' && ch < 0x7f) { *d++ = ch; break; @@ -1013,8 +1014,6 @@ ngx_unescape_uri(u_char **dst, u_char **src, size_t size) goto done; } - state = sw_usual; - if (ch > '%' && ch < 0x7f) { *d++ = ch; break; @@ -1025,7 +1024,7 @@ ngx_unescape_uri(u_char **dst, u_char **src, size_t size) break; } - /* skip the invalid quoted character */ + /* the invalid quoted character */ break; } |