From 2d2fa8dd248ba2e3e22f13533fef4c69bfbc3c2b Mon Sep 17 00:00:00 2001 From: George Hazan Date: Fri, 21 Mar 2025 14:31:09 +0300 Subject: =?UTF-8?q?fixes=20#4863=20(NewStory:=20=D0=BE=D1=82=D0=BF=D1=80?= =?UTF-8?q?=D0=B0=D0=B2=D0=BB=D0=B5=D0=BD=D0=BD=D1=8B=D0=B5=20=D1=84=D0=B0?= =?UTF-8?q?=D0=B9=D0=BB=D1=8B=20=D0=BF=D0=BE-=D1=80=D0=B0=D0=B7=D0=BD?= =?UTF-8?q?=D0=BE=D0=BC=D1=83=20=D0=BF=D0=BE=D0=BA=D0=B0=D0=B7=D1=8B=D0=B2?= =?UTF-8?q?=D0=B0=D1=8E=D1=82=D1=81=D1=8F=20=D0=B2=20=D1=82=D0=B0=D0=B1?= =?UTF-8?q?=D1=81=D0=B0=D1=85=20=D0=B8=20=D0=B2=20=D0=B8=D1=81=D1=82=D0=BE?= =?UTF-8?q?=D1=80=D0=B8=D0=B8)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/core/stdmsg/src/msgs.cpp | 6 +++--- src/mir_app/src/filexferdlg.cpp | 2 +- src/mir_app/src/srmm_base.cpp | 6 ++++-- 3 files changed, 8 insertions(+), 6 deletions(-) (limited to 'src') diff --git a/src/core/stdmsg/src/msgs.cpp b/src/core/stdmsg/src/msgs.cpp index 6bbf995d52..6e7e0f2ceb 100644 --- a/src/core/stdmsg/src/msgs.cpp +++ b/src/core/stdmsg/src/msgs.cpp @@ -277,7 +277,7 @@ struct MSavedEvent static void RestoreUnreadMessageAlerts(void) { - OBJLIST arEvents(10, NumericKeySortT); + OBJLIST events(10, NumericKeySortT); for (auto &hContact : Contacts()) { if (Contact::IsGroupChat(hContact) || !Proto_GetBaseAccountName(hContact)) @@ -305,12 +305,12 @@ static void RestoreUnreadMessageAlerts(void) if (autoPopup && !windowAlreadyExists) GetContainer()->AddPage(hContact); else - arEvents.insert(new MSavedEvent(hContact, hDbEvent)); + events.insert(new MSavedEvent(hContact, hDbEvent)); } } } - for (auto &e : arEvents) + for (auto &e : events) Srmm_AddEvent(e->hContact, e->hEvent); } diff --git a/src/mir_app/src/filexferdlg.cpp b/src/mir_app/src/filexferdlg.cpp index d946f4c65f..1abb90673d 100644 --- a/src/mir_app/src/filexferdlg.cpp +++ b/src/mir_app/src/filexferdlg.cpp @@ -595,7 +595,7 @@ INT_PTR CALLBACK DlgProcFileTransfer(HWND hwndDlg, UINT msg, WPARAM wParam, LPAR DB::EventInfo dbei; dbei.szModule = Proto_GetBaseAccountName(dat->hContact); dbei.eventType = EVENTTYPE_FILE; - dbei.flags = DBEF_SENT | DBEF_UTF; + dbei.flags = DBEF_SENT | DBEF_READ | DBEF_UTF; dbei.iTimestamp = time(0); DB::FILE_BLOB blob(dat->szFilenames, dat->szMsg); diff --git a/src/mir_app/src/srmm_base.cpp b/src/mir_app/src/srmm_base.cpp index 734428756f..fa4f27ce57 100644 --- a/src/mir_app/src/srmm_base.cpp +++ b/src/mir_app/src/srmm_base.cpp @@ -841,7 +841,7 @@ void CSrmmBaseDialog::UpdateChatLog() auto *szProto = Proto_GetBaseAccountName(m_hContact); for (MEVENT hDbEvent = m_hDbEventFirst; hDbEvent; hDbEvent = db_event_next(m_hContact, hDbEvent)) { DB::EventInfo dbei(hDbEvent); - if (dbei && !mir_strcmp(szProto, dbei.szModule) && g_chatApi.DbEventIsShown(dbei) && dbei.szUserId) { + if (dbei && !mir_strcmp(szProto, dbei.szModule) && g_chatApi.DbEventIsShown(dbei)) { if (iHistoryMode == LOADHISTORY_UNREAD && dbei.bRead) continue; @@ -855,7 +855,9 @@ void CSrmmBaseDialog::UpdateChatLog() gce.time = dbei.getUnixtime(); gce.hEvent = hDbEvent; - if (USERINFO *ui = g_chatApi.UM_FindUser(m_si, wszUserId)) + if (dbei.szUserId == nullptr) + gce.bIsMe = true; + else if (USERINFO *ui = g_chatApi.UM_FindUser(m_si, wszUserId)) gce.pszNick.w = ui->pszNick; else gce.pszNick.w = wszUserId; -- cgit v1.2.3