summaryrefslogtreecommitdiff
path: root/protocols/SkypeWeb/src/skype_utils.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'protocols/SkypeWeb/src/skype_utils.cpp')
-rw-r--r--protocols/SkypeWeb/src/skype_utils.cpp20
1 files changed, 20 insertions, 0 deletions
diff --git a/protocols/SkypeWeb/src/skype_utils.cpp b/protocols/SkypeWeb/src/skype_utils.cpp
index 5ce367f768..a9a44e1c27 100644
--- a/protocols/SkypeWeb/src/skype_utils.cpp
+++ b/protocols/SkypeWeb/src/skype_utils.cpp
@@ -37,4 +37,24 @@ bool CSkypeProto::IsFileExists(std::tstring path)
return true;
}
return false;
+}
+
+std::string CSkypeProto::urlDecode(std::string SRC)
+{
+ std::string ret;
+ char ch;
+ int i, ii;
+ for (i = 0; i < SRC.length(); i++)
+ {
+ if (int(SRC[i]) == 37)
+ {
+ sscanf(SRC.substr(i + 1, 2).c_str(), "%x", &ii);
+ ch = static_cast<char>(ii);
+ ret += ch;
+ i = i + 2;
+ }
+ else
+ ret += SRC[i];
+ }
+ return (ret);
} \ No newline at end of file