diff options
Diffstat (limited to 'protocols/VKontakte/src/vk_chats.cpp')
-rw-r--r-- | protocols/VKontakte/src/vk_chats.cpp | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/protocols/VKontakte/src/vk_chats.cpp b/protocols/VKontakte/src/vk_chats.cpp index 1d3c56d273..d5b58469e2 100644 --- a/protocols/VKontakte/src/vk_chats.cpp +++ b/protocols/VKontakte/src/vk_chats.cpp @@ -527,9 +527,20 @@ int CVkProto::OnChatEvent(WPARAM, LPARAM lParam) void CVkProto::OnSendChatMsg(NETLIBHTTPREQUEST *reply, AsyncHttpRequest *pReq)
{
debugLogA("CVkProto::OnSendChatMsg %d", reply->resultCode);
+ int iResult = ACKRESULT_FAILED;
if (reply->resultCode == 200) {
JSONNode jnRoot;
CheckJsonResponse(pReq, reply, jnRoot);
+ iResult = ACKRESULT_SUCCESS;
+ }
+ if (!pReq->pUserInfo)
+ return;
+
+ CVkFileUploadParam *fup = (CVkFileUploadParam *)pReq->pUserInfo;
+ ProtoBroadcastAck(fup->hContact, ACKTYPE_FILE, iResult, (HANDLE)(fup));
+ if (!pReq->bNeedsRestart || m_bTerminated) {
+ delete fup;
+ pReq->pUserInfo = NULL;
}
}
|