diff options
author | Kirill Volinsky <mataes2007@gmail.com> | 2013-06-15 14:04:24 +0000 |
---|---|---|
committer | Kirill Volinsky <mataes2007@gmail.com> | 2013-06-15 14:04:24 +0000 |
commit | 1ed163aadcc0ea1baa3e6d1982efddfcf1f78ca9 (patch) | |
tree | babd2a54454beac20fe591bc94b636d8f843b99c /protocols/MRA/src/Mra_functions.cpp | |
parent | d4950862a3017d0cf30afeeb613e23e0275708de (diff) |
fixed working mra with nxsn
git-svn-id: http://svn.miranda-ng.org/main/trunk@4956 1316c22d-e87f-b044-9b9b-93d7a3e3ba9c
Diffstat (limited to 'protocols/MRA/src/Mra_functions.cpp')
-rw-r--r-- | protocols/MRA/src/Mra_functions.cpp | 22 |
1 files changed, 10 insertions, 12 deletions
diff --git a/protocols/MRA/src/Mra_functions.cpp b/protocols/MRA/src/Mra_functions.cpp index 6572e3307b..f7b5ab93a5 100644 --- a/protocols/MRA/src/Mra_functions.cpp +++ b/protocols/MRA/src/Mra_functions.cpp @@ -1081,19 +1081,17 @@ static void FakeThread(void* param) mir_free(param);
}
-DWORD CMraProto::ProtoBroadcastAckAsync(HANDLE hContact, int type, int hResult, HANDLE hProcess, LPARAM lParam, size_t paramSize)
+int CMraProto::ProtoBroadcastAckAsync(HANDLE hContact, int type, int hResult, HANDLE hProcess, LPARAM lParam)
{
- ACKDATA* ack = (ACKDATA*)mir_calloc(sizeof(ACKDATA) + paramSize);
- ack->cbSize = sizeof(ACKDATA);
- ack->szModule = m_szModuleName; ack->hContact = hContact;
- ack->type = type; ack->result = hResult;
- ack->hProcess = hProcess;
- if (paramSize) {
- ack->lParam = (LPARAM)(ack+1);
- memcpy((void*)ack->lParam, (void*)lParam, paramSize);
- }
- mir_forkthread(FakeThread, ack);
- return 0;
+ ACKDATA ack = {0};
+ ack.cbSize = sizeof(ACKDATA);
+ ack.szModule = m_szModuleName;
+ ack.hContact = hContact;
+ ack.type = type;
+ ack.result = hResult;
+ ack.hProcess = hProcess;
+ ack.lParam = lParam;
+ return CallService(MS_PROTO_BROADCASTACK, 0, (LPARAM)&ack);
}
DWORD CMraProto::CreateBlobFromContact(HANDLE hContact, LPWSTR lpwszRequestReason, size_t dwRequestReasonSize, LPBYTE lpbBuff, size_t dwBuffSize, size_t *pdwBuffSizeRet)
|