summaryrefslogtreecommitdiff
path: root/src/mir_app
diff options
context:
space:
mode:
authorGeorge Hazan <ghazan@miranda.im>2023-03-15 12:17:54 +0300
committerGeorge Hazan <ghazan@miranda.im>2023-03-15 12:17:54 +0300
commite4f25e2f1f5ecad84a8900b056be90d0c2ccf559 (patch)
treea4c1fc22a868a45c5b89be3acc2948c7d9ab124a /src/mir_app
parent26a36b043f00d780fc9e8d27c7cad75082f0e960 (diff)
HM_DBEVENTADDED message replaced with CMsgDialog::EventAdded method
Diffstat (limited to 'src/mir_app')
-rw-r--r--src/mir_app/src/chat_svc.cpp17
1 files changed, 17 insertions, 0 deletions
diff --git a/src/mir_app/src/chat_svc.cpp b/src/mir_app/src/chat_svc.cpp
index d893a2c754..9e6a89ea3f 100644
--- a/src/mir_app/src/chat_svc.cpp
+++ b/src/mir_app/src/chat_svc.cpp
@@ -802,6 +802,9 @@ static INT_PTR LeaveChat(WPARAM hContact, LPARAM)
static int OnEventAdded(WPARAM hContact, LPARAM hDbEvent)
{
+ if (hContact == 0)
+ return 0;
+
if (Contact::IsGroupChat(hContact)) {
if (auto *si = SM_FindSessionByContact(hContact)) {
DB::EventInfo dbei;
@@ -822,6 +825,20 @@ static int OnEventAdded(WPARAM hContact, LPARAM hDbEvent)
}
}
}
+ else {
+ g_clistApi.pfnRemoveEvent(hContact, 1);
+
+ DBEVENTINFO dbei = {};
+ if (!db_event_get(hDbEvent, &dbei)) {
+ if (auto *pDlg = Srmm_FindDialog(hContact))
+ pDlg->EventAdded(hDbEvent, dbei);
+
+ MCONTACT hRealContact = db_event_getContact(hDbEvent);
+ if (hRealContact != hContact)
+ if (auto *pDlg = Srmm_FindDialog(hRealContact))
+ pDlg->EventAdded(hDbEvent, dbei);
+ }
+ }
return 0;
}