diff options
author | dx <dx@dxzone.com.ar> | 2017-06-14 16:57:48 -0300 |
---|---|---|
committer | dx <dx@dxzone.com.ar> | 2017-06-14 16:57:48 -0300 |
commit | 139f1949dcfd9981deafcc275973b93d087e38b3 (patch) | |
tree | fc298c7ee5a1e5edc5b6a747195e748384b7eaba | |
parent | 8b14c8bf454095c6c25749e92669fc6db1e1e292 (diff) | |
download | pidgin-139f1949dcfd9981deafcc275973b93d087e38b3.tar.gz |
purple_markup_unescape_entity: Fix handling of hexadecimal html entities
Somehow we were under the impression that isxdigit means hexadecimal digit and
the letter 'x' too.
Fixes #17177
-rw-r--r-- | libpurple/util.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/libpurple/util.c b/libpurple/util.c index b068ed9e6a..044a7acff0 100644 --- a/libpurple/util.c +++ b/libpurple/util.c @@ -973,7 +973,7 @@ purple_markup_unescape_entity(const char *text, int *length) pln = "\302\256"; /* or use g_unichar_to_utf8(0xae); */ else if(IS_ENTITY("'")) pln = "\'"; - else if(text[1] == '#' && g_ascii_isxdigit(text[2])) { + else if(text[1] == '#' && (g_ascii_isxdigit(text[2]) || text[2] == 'x')) { static char buf[7]; const char *start = text + 2; char *end; |