From 7dd1392fba3f795e46aaae5dca7d8568314186d1 Mon Sep 17 00:00:00 2001 From: Jason Parker Date: Fri, 27 Aug 2010 20:32:21 +0000 Subject: [PATCH] Merged revisions 283882 via svnmerge from https://origsvn.digium.com/svn/asterisk/branches/1.8 ................ r283882 | qwell | 2010-08-27 15:31:55 -0500 (Fri, 27 Aug 2010) | 22 lines Merged revisions 283881 via svnmerge from https://origsvn.digium.com/svn/asterisk/branches/1.6.2 ................ r283881 | qwell | 2010-08-27 15:30:27 -0500 (Fri, 27 Aug 2010) | 15 lines Merged revisions 283880 via svnmerge from https://origsvn.digium.com/svn/asterisk/branches/1.4 ........ r283880 | qwell | 2010-08-27 15:29:11 -0500 (Fri, 27 Aug 2010) | 8 lines Fix issue with decoding ^-escaped characters in realtime. (closes issue #17790) Reported by: denzs Patches: 17790-chunky.diff uploaded by qwell (license 4) Tested by: qwell, denzs ........ ................ ................ git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@283883 65c4cc65-6c06-0410-ace0-fbb531ad65f3 --- addons/res_config_mysql.c | 2 +- main/config.c | 2 +- res/res_config_odbc.c | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/addons/res_config_mysql.c b/addons/res_config_mysql.c index e770452fd4..1ba5224855 100644 --- a/addons/res_config_mysql.c +++ b/addons/res_config_mysql.c @@ -307,7 +307,7 @@ static char *decode_chunk(char *chunk) char *orig = chunk; for (; *chunk; chunk++) { if (*chunk == '^' && strchr("0123456789ABCDEFabcdef", chunk[1]) && strchr("0123456789ABCDEFabcdef", chunk[2])) { - sscanf(chunk + 1, "%02hhd", chunk); + sscanf(chunk + 1, "%02hhX", chunk); memmove(chunk + 1, chunk + 3, strlen(chunk + 3) + 1); } } diff --git a/main/config.c b/main/config.c index 34e4247a70..d763adac4a 100644 --- a/main/config.c +++ b/main/config.c @@ -2361,7 +2361,7 @@ char *ast_realtime_decode_chunk(char *chunk) char *orig = chunk; for (; *chunk; chunk++) { if (*chunk == '^' && strchr("0123456789ABCDEFabcdef", chunk[1]) && strchr("0123456789ABCDEFabcdef", chunk[2])) { - sscanf(chunk + 1, "%02hhd", chunk); + sscanf(chunk + 1, "%02hhX", chunk); memmove(chunk + 1, chunk + 3, strlen(chunk + 3) + 1); } } diff --git a/res/res_config_odbc.c b/res/res_config_odbc.c index 15534c7faf..64628c2866 100644 --- a/res/res_config_odbc.c +++ b/res/res_config_odbc.c @@ -62,7 +62,7 @@ static void decode_chunk(char *chunk) { for (; *chunk; chunk++) { if (*chunk == '^' && strchr("0123456789ABCDEFabcdef", chunk[1]) && strchr("0123456789ABCDEFabcdef", chunk[2])) { - sscanf(chunk + 1, "%02hhd", chunk); + sscanf(chunk + 1, "%02hhX", chunk); memmove(chunk + 1, chunk + 3, strlen(chunk + 3) + 1); } }