summaryrefslogtreecommitdiff
path: root/protocols/ICQ-WIM/src/utils.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'protocols/ICQ-WIM/src/utils.cpp')
-rw-r--r--protocols/ICQ-WIM/src/utils.cpp16
1 files changed, 14 insertions, 2 deletions
diff --git a/protocols/ICQ-WIM/src/utils.cpp b/protocols/ICQ-WIM/src/utils.cpp
index b6712ce8c9..e0c39c27a6 100644
--- a/protocols/ICQ-WIM/src/utils.cpp
+++ b/protocols/ICQ-WIM/src/utils.cpp
@@ -261,9 +261,21 @@ void CIcqProto::setId(MCONTACT hContact, const char *szSetting, __int64 iValue)
/////////////////////////////////////////////////////////////////////////////////////////
-CMStringW fileText2url(const CMStringW &wszText)
+bool fileText2url(const CMStringW &wszText, CMStringW *res)
{
- return wszText.Mid(26);
+ if (!mir_wstrncmp(wszText, L"https://files.icq.net/get/", 26)) {
+ if (res)
+ *res = wszText.Mid(26);
+ return true;
+ }
+
+ if (!mir_wstrncmp(wszText, L"http://files.icq.net/get/", 25)) {
+ if (res)
+ *res = wszText.Mid(25);
+ return true;
+ }
+
+ return false;
}
/////////////////////////////////////////////////////////////////////////////////////////