summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGeorge Hazan <george.hazan@gmail.com>2023-05-08 19:44:24 +0300
committerGeorge Hazan <george.hazan@gmail.com>2023-05-08 19:44:24 +0300
commit16e163c3c7d256d3557386d500ff121fa1cf7955 (patch)
treef6bb2b10d5887f98e2a45079a1d5dd32ae28d85c
parentaba622e13a5e4b5ce837489c1c3aad79c33a044e (diff)
fixes #3519 (Scriver: Дубли истории сообщений в конференции)
-rw-r--r--protocols/JabberG/src/jabber_thread.cpp5
1 files changed, 4 insertions, 1 deletions
diff --git a/protocols/JabberG/src/jabber_thread.cpp b/protocols/JabberG/src/jabber_thread.cpp
index 0f7816134c..39f6413007 100644
--- a/protocols/JabberG/src/jabber_thread.cpp
+++ b/protocols/JabberG/src/jabber_thread.cpp
@@ -266,8 +266,11 @@ void CJabberProto::ServerThread(JABBER_CONN_DATA *pParam)
// quit all chatrooms (will send quit message)
LISTFOREACH(i, this, LIST_CHATROOM)
- if (auto *item = ListGetItemPtrFromIndex(i))
+ if (auto *item = ListGetItemPtrFromIndex(i)) {
+ if (item->si)
+ item->si->arEvents.destroy();
GcQuit(item, 0, nullptr);
+ }
ListRemoveList(LIST_CHATROOM);
ListRemoveList(LIST_BOOKMARK);