[svn] Don't unescape %00.

This commit is contained in:
hniksic 2005-05-05 07:05:00 -07:00
parent 1230b724ca
commit 486d672e99
2 changed files with 12 additions and 1 deletions

View File

@ -1,3 +1,8 @@
2005-05-05 Hrvoje Niksic <hniksic@xemacs.org>
* url.c (url_unescape): Don't unescape %00, it effectively
truncates the string.
2005-05-05 Hrvoje Niksic <hniksic@xemacs.org>
* log.c (copy_and_escape): Replace the FOR_URI argument with a

View File

@ -175,10 +175,16 @@ url_unescape (char *s)
}
else
{
char c;
/* Do nothing if '%' is not followed by two hex digits. */
if (!h[1] || !h[2] || !(ISXDIGIT (h[1]) && ISXDIGIT (h[2])))
goto copychar;
*t = X2DIGITS_TO_NUM (h[1], h[2]);
c = X2DIGITS_TO_NUM (h[1], h[2]);
/* Don't unescape %00 because there is no way to insert it
into a C string without effectively truncating it. */
if (c == '\0')
goto copychar;
*t = c;
h += 2;
}
}