summaryrefslogtreecommitdiff
path: root/protocols/IcqOscarJ/fam_02location.cpp
diff options
context:
space:
mode:
authorAlexander Gluzsky <sss123next@list.ru>2012-07-29 18:49:17 +0000
committerAlexander Gluzsky <sss123next@list.ru>2012-07-29 18:49:17 +0000
commit66357371399956ad19ab667d3c2d49bfc7ea0095 (patch)
tree51dfe6236911663542bc1acd4e106b3a736ca3ab /protocols/IcqOscarJ/fam_02location.cpp
parent6eb6a545a869d91578dfa31844783f1f062129d0 (diff)
ICQ: ported icq custom capabilities api from icq plus mod
NEW_GPG: many memmory corruption fixes NEW_GPG: improoved auto key exchange git-svn-id: http://svn.miranda-ng.org/main/trunk@1243 1316c22d-e87f-b044-9b9b-93d7a3e3ba9c
Diffstat (limited to 'protocols/IcqOscarJ/fam_02location.cpp')
-rwxr-xr-x[-rw-r--r--]protocols/IcqOscarJ/fam_02location.cpp18
1 files changed, 18 insertions, 0 deletions
diff --git a/protocols/IcqOscarJ/fam_02location.cpp b/protocols/IcqOscarJ/fam_02location.cpp
index b7f0163917..2398cf18c6 100644..100755
--- a/protocols/IcqOscarJ/fam_02location.cpp
+++ b/protocols/IcqOscarJ/fam_02location.cpp
@@ -182,6 +182,24 @@ void CIcqProto::handleLocationUserInfoReply(BYTE* buf, WORD wLen, DWORD dwCookie
char *szEncoding = NULL;
// Get Profile encoding TLV
+
+ pTLV = pChain->getTLV(0x05, 1);
+ if (pTLV && (pTLV->wLen > 0))
+ {
+ // store client capabilities
+ BYTE* capBuf = pTLV->pData;
+ WORD capLen = pTLV->wLen;
+ DBCONTACTWRITESETTING dbcws;
+ dbcws.value.type = DBVT_BLOB;
+ dbcws.value.cpbVal = capLen;
+ dbcws.value.pbVal = capBuf;
+ dbcws.szModule = m_szModuleName;
+ dbcws.szSetting = "CapBuf";
+ CallService(MS_DB_CONTACT_WRITESETTING, (WPARAM)hContact, (LPARAM)&dbcws);
+ }
+ else
+ deleteSetting(hContact, "CapBuf");
+
pTLV = pChain->getTLV(0x01, 1);
if (pTLV && (pTLV->wLen >= 1))
{