From 972fa306badc2e072d65cec43c37496aa952eee0 Mon Sep 17 00:00:00 2001 From: George Hazan Date: Mon, 24 Dec 2018 13:59:13 +0300 Subject: mir_urlDecode restored --- src/mir_core/src/http.cpp | 24 ++++++++++++++++++++++++ src/mir_core/src/mir_core.def | 1 + src/mir_core/src/mir_core64.def | 1 + 3 files changed, 26 insertions(+) (limited to 'src') diff --git a/src/mir_core/src/http.cpp b/src/mir_core/src/http.cpp index fad969c680..8d4ae7dfd6 100755 --- a/src/mir_core/src/http.cpp +++ b/src/mir_core/src/http.cpp @@ -21,6 +21,30 @@ along with this program. If not, see . static const char szHexDigits[] = "0123456789ABCDEF"; +MIR_CORE_DLL(char*) mir_urlDecode(const char *szUrl) +{ + if (szUrl == nullptr) + return nullptr; + + char *ret = mir_strdup(szUrl); + + for (char *p = ret; *p; p++) { + switch (*p) { + case '%': + int ii; + sscanf(p+1, "%2x", &ii); + strdel(p, 2); + *p = ii; + break; + + case '+': + *p = ' '; + break; + } + } + return ret; +} + MIR_CORE_DLL(char*) mir_urlEncode(const char *szUrl) { if (szUrl == nullptr) diff --git a/src/mir_core/src/mir_core.def b/src/mir_core/src/mir_core.def index 4a744c5b5f..2626bbf556 100644 --- a/src/mir_core/src/mir_core.def +++ b/src/mir_core/src/mir_core.def @@ -154,6 +154,7 @@ wildcmpi @158 wildcmpiw @159 mir_base64_encode @160 mir_base64_decode @161 +mir_urlDecode @162 db_set_resident @165 db_set @166 mir_subclassWindowFull @218 diff --git a/src/mir_core/src/mir_core64.def b/src/mir_core/src/mir_core64.def index 3f25e54f77..6a5981c157 100644 --- a/src/mir_core/src/mir_core64.def +++ b/src/mir_core/src/mir_core64.def @@ -154,6 +154,7 @@ wildcmpi @158 wildcmpiw @159 mir_base64_encode @160 mir_base64_decode @161 +mir_urlDecode @162 db_set_resident @165 db_set @166 mir_subclassWindowFull @218 -- cgit v1.2.3