diff options
author | George Hazan <george.hazan@gmail.com> | 2014-03-14 20:38:05 +0000 |
---|---|---|
committer | George Hazan <george.hazan@gmail.com> | 2014-03-14 20:38:05 +0000 |
commit | b23ed923d6cac195897244661f26aa3976bb650f (patch) | |
tree | e2fb670d77228a657f439f8a12abc2475399bf03 /plugins/Scriver | |
parent | 60adc0705ec417756a3e86d436ad21b5265a1da2 (diff) |
fix of sending messages to subs in stdchat & scriver
git-svn-id: http://svn.miranda-ng.org/main/trunk@8605 1316c22d-e87f-b044-9b9b-93d7a3e3ba9c
Diffstat (limited to 'plugins/Scriver')
-rw-r--r-- | plugins/Scriver/src/globals.cpp | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/plugins/Scriver/src/globals.cpp b/plugins/Scriver/src/globals.cpp index 51b2afb776..dc06318c27 100644 --- a/plugins/Scriver/src/globals.cpp +++ b/plugins/Scriver/src/globals.cpp @@ -399,21 +399,23 @@ static int ackevent(WPARAM wParam, LPARAM lParam) if (pAck->type != ACKTYPE_MESSAGE)
return 0;
- ACKDATA *ack = (ACKDATA*)lParam;
- MessageSendQueueItem *item = FindSendQueueItem(pAck->hContact, (HANDLE)pAck->hProcess);
+ MCONTACT hContact = db_mc_getMeta(pAck->hContact);
+ if (hContact == NULL)
+ hContact = pAck->hContact;
+ MessageSendQueueItem *item = FindSendQueueItem(hContact, (HANDLE)pAck->hProcess);
if (item == NULL)
return 0;
HWND hwndSender = item->hwndSender;
- if (ack->result == ACKRESULT_FAILED) {
+ if (pAck->result == ACKRESULT_FAILED) {
if (item->hwndErrorDlg != NULL)
- item = FindOldestPendingSendQueueItem(hwndSender, pAck->hContact);
+ item = FindOldestPendingSendQueueItem(hwndSender, hContact);
if (item != NULL && item->hwndErrorDlg == NULL) {
if (hwndSender != NULL) {
ErrorWindowData *ewd = (ErrorWindowData *)mir_alloc(sizeof(ErrorWindowData));
ewd->szName = GetNickname(item->hContact, item->proto);
- ewd->szDescription = mir_a2t((char*)ack->lParam);
+ ewd->szDescription = mir_a2t((char*)pAck->lParam);
ewd->szText = GetSendBufferMsg(item);
ewd->hwndParent = hwndSender;
ewd->queueItem = item;
|