Mercurial > njs
changeset 165:584114a51b51
A fix in decodeURI() function.
| author | Igor Sysoev <igor@sysoev.ru> |
|---|---|
| date | Wed, 31 Aug 2016 19:18:47 +0300 |
| parents | 76f16f0ef6c5 |
| children | 715b147cbfe0 |
| files | njs/njs_string.c |
| diffstat | 1 files changed, 4 insertions(+), 2 deletions(-) [+] |
line wrap: on
line diff
--- a/njs/njs_string.c Wed Aug 31 17:51:54 2016 +0300 +++ b/njs/njs_string.c Wed Aug 31 19:18:47 2016 +0300 @@ -2355,7 +2355,10 @@ byte = *src++; if (byte == '%') { - if (size < 3) { + + size -= 2; + + if (size == 0) { goto uri_error; } @@ -2372,7 +2375,6 @@ byte = (d0 << 4) + d1; if ((reserve[byte >> 5] & ((uint32_t) 1 << (byte & 0x1f))) == 0) { - size -= 2; n += 2; } }
