summaryrefslogtreecommitdiff
path: root/protocols/SkypeWeb/src/skype_utils.cpp
diff options
context:
space:
mode:
authorMikalaiR <nikolay.romanovich@narod.ru>2015-06-03 07:08:43 +0000
committerMikalaiR <nikolay.romanovich@narod.ru>2015-06-03 07:08:43 +0000
commit3545c5a4bf039680f7d7a5cdd6cac9d19ae084c3 (patch)
tree6d9a22e42caba41e60038251c64830fab01f2956 /protocols/SkypeWeb/src/skype_utils.cpp
parent2cb74cbf59d7a9a1de2efd9076d4c4d77f5ea47d (diff)
SkypeWeb: M$ account login support part 1.
git-svn-id: http://svn.miranda-ng.org/main/trunk@13979 1316c22d-e87f-b044-9b9b-93d7a3e3ba9c
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 fe55c22841..d84fc3d86e 100644
--- a/protocols/SkypeWeb/src/skype_utils.cpp
+++ b/protocols/SkypeWeb/src/skype_utils.cpp
@@ -784,4 +784,24 @@ void CSkypeProto::SkypeUnsetTimer(void*)
if (CSkypeProto::m_timer)
KillTimer(NULL, CSkypeProto::m_timer);
CSkypeProto::m_timer = 0;
+}
+
+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