diff options
author | Gary Kramlich <grim@reaperworld.com> | 2017-06-16 23:43:30 +0000 |
---|---|---|
committer | Gary Kramlich <grim@reaperworld.com> | 2017-06-16 23:43:30 +0000 |
commit | cce258edfd6b5044eb607466a29ce0a1cab22cca (patch) | |
tree | b4ba43a5e6f307a42db6b6fa6184fdd62a6c17e8 | |
parent | 1661d8aad68539ffec6a525bba107c7dbb1ba7da (diff) | |
parent | 139f1949dcfd9981deafcc275973b93d087e38b3 (diff) | |
download | pidgin-cce258edfd6b5044eb607466a29ce0a1cab22cca.tar.gz |
Merged in dequisdequis/pidgin/release-2.x.y (pull request #213)
purple_markup_unescape_entity: Fix handling of hexadecimal html entities
Approved-by: Eion Robb <eionrobb@gmail.com>
Approved-by: Gary Kramlich <grim@reaperworld.com>
Approved-by: Mike Ruprecht <cmaiku@gmail.com>
-rw-r--r-- | libpurple/util.c | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/libpurple/util.c b/libpurple/util.c index 5015acc76a..044a7acff0 100644 --- a/libpurple/util.c +++ b/libpurple/util.c @@ -950,8 +950,7 @@ const char * purple_markup_unescape_entity(const char *text, int *length) { const char *pln; - int len, pound; - char temp[2]; + int len; if (!text || *text != '&') return NULL; @@ -974,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; |