diff options
author | ElzorFox <elzorfox@ya.ru> | 2018-10-03 11:31:55 +0500 |
---|---|---|
committer | ElzorFox <elzorfox@ya.ru> | 2018-10-03 11:31:55 +0500 |
commit | 5ea4704b38bd381008f61418405d606483d68f29 (patch) | |
tree | afdb412b6b1e4b0cfd918e25df53aab458741b76 /protocols/VKontakte | |
parent | e123b23e3176dfc83fd6d175d8b211cd83b37fcf (diff) |
VKontakte: loading edited messages using RecvMsg
Diffstat (limited to 'protocols/VKontakte')
-rw-r--r-- | protocols/VKontakte/src/misc.cpp | 7 | ||||
-rw-r--r-- | protocols/VKontakte/src/vk_messages.cpp | 19 | ||||
-rw-r--r-- | protocols/VKontakte/src/vk_proto.h | 4 |
3 files changed, 7 insertions, 23 deletions
diff --git a/protocols/VKontakte/src/misc.cpp b/protocols/VKontakte/src/misc.cpp index 149c659fa8..d4af4c1a8c 100644 --- a/protocols/VKontakte/src/misc.cpp +++ b/protocols/VKontakte/src/misc.cpp @@ -1540,14 +1540,14 @@ void CVkProto::AddVkDeactivateEvent(MCONTACT hContact, CMStringW& wszType) }
-MEVENT CVkProto::GetMessageFromDb(UINT iMsgId, UINT ×tamp, CMStringW &msg, DBEVENTINFO& dbei)
+MEVENT CVkProto::GetMessageFromDb(UINT iMsgId, UINT ×tamp, CMStringW &msg)
{
char szMid[40];
_itoa(iMsgId, szMid, 10);
- return GetMessageFromDb(szMid, timestamp, msg, dbei);
+ return GetMessageFromDb(szMid, timestamp, msg);
}
-MEVENT CVkProto::GetMessageFromDb(const char *messageId, UINT ×tamp, CMStringW &msg, DBEVENTINFO& dbei)
+MEVENT CVkProto::GetMessageFromDb(const char *messageId, UINT ×tamp, CMStringW &msg)
{
if (messageId == nullptr)
return 0;
@@ -1556,6 +1556,7 @@ MEVENT CVkProto::GetMessageFromDb(const char *messageId, UINT ×tamp, CMStri if (!hDbEvent)
return 0;
+ DBEVENTINFO dbei = {};
dbei.cbBlob = db_event_getBlobSize(hDbEvent);
mir_ptr<BYTE> blob((PBYTE)mir_alloc(dbei.cbBlob));
dbei.pBlob = blob;
diff --git a/protocols/VKontakte/src/vk_messages.cpp b/protocols/VKontakte/src/vk_messages.cpp index 4dcf1e2346..fd91d769f0 100644 --- a/protocols/VKontakte/src/vk_messages.cpp +++ b/protocols/VKontakte/src/vk_messages.cpp @@ -311,26 +311,9 @@ void CVkProto::OnReceiveMessages(NETLIBHTTPREQUEST *reply, AsyncHttpRequest *pRe wszBody;
CMStringW wszOldMsg;
- DBEVENTINFO dbei = {};
- MEVENT hDbEvent = GetMessageFromDb(mid, datetime, wszOldMsg, dbei);
- if (hDbEvent) {
+ if (GetMessageFromDb(mid, datetime, wszOldMsg))
wszBody += SetBBCString(TranslateT("\nOriginal message:\n"), m_vkOptions.BBCForAttachments(), vkbbcB) +
wszOldMsg;
-
- if (isRead && bUseServerReadFlag)
- dbei.flags |= DBEF_READ;
- else
- dbei.flags &= ~DBEF_READ;
-
- T2Utf pszBody(wszBody);
- dbei.cbBlob = mir_strlen(pszBody) + 1;
- dbei.pBlob = pszBody;
-
- debugLogA("CVkProto::OnReceiveMessages edited mid = %d, datetime = %d, isOut = %d, isRead = %d, uid = %d", mid, datetime, isOut, isRead, uid);
-
- db_event_edit(hContact, hDbEvent, &dbei);
- continue;
- }
}
PROTORECVEVENT recv = {};
diff --git a/protocols/VKontakte/src/vk_proto.h b/protocols/VKontakte/src/vk_proto.h index 841d2a5f78..6c3d632715 100644 --- a/protocols/VKontakte/src/vk_proto.h +++ b/protocols/VKontakte/src/vk_proto.h @@ -353,8 +353,8 @@ private: void SetInvisible(MCONTACT hContact);
CMStringW RemoveBBC(CMStringW& wszSrc);
void AddVkDeactivateEvent(MCONTACT hContact, CMStringW & wszType);
- MEVENT GetMessageFromDb(UINT iMsgId, UINT& timestamp, CMStringW& msg, DBEVENTINFO& dbei);
- MEVENT GetMessageFromDb(const char * messageId, UINT ×tamp, CMStringW &msg, DBEVENTINFO& dbei);
+ MEVENT GetMessageFromDb(UINT iMsgId, UINT& timestamp, CMStringW& msg);
+ MEVENT GetMessageFromDb(const char * messageId, UINT ×tamp, CMStringW &msg);
int DeleteContact(MCONTACT hContact);
bool IsMessageExist(UINT iMsgId, VKMesType vkType = vkALL);
void InitQueue();
|