From f5fde137bbe30749e0e7391ada2ebfcb7d389acf Mon Sep 17 00:00:00 2001 From: Marvin W Date: Fri, 11 Apr 2025 11:51:36 +0200 Subject: Fix potential crashes during account disabling --- libdino/src/service/conversation_manager.vala | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) (limited to 'libdino/src/service/conversation_manager.vala') diff --git a/libdino/src/service/conversation_manager.vala b/libdino/src/service/conversation_manager.vala index a757e8af..e7c315a2 100644 --- a/libdino/src/service/conversation_manager.vala +++ b/libdino/src/service/conversation_manager.vala @@ -62,12 +62,14 @@ public class ConversationManager : StreamInteractionModule, Object { } public Conversation? get_conversation_for_message(Entities.Message message) { - if (message.type_ == Entities.Message.Type.CHAT) { - return create_conversation(message.counterpart.bare_jid, message.account, Conversation.Type.CHAT); - } else if (message.type_ == Entities.Message.Type.GROUPCHAT) { - return create_conversation(message.counterpart.bare_jid, message.account, Conversation.Type.GROUPCHAT); - } else if (message.type_ == Entities.Message.Type.GROUPCHAT_PM) { - return create_conversation(message.counterpart, message.account, Conversation.Type.GROUPCHAT_PM); + if (conversations.has_key(message.account)) { + if (message.type_ == Entities.Message.Type.CHAT) { + return create_conversation(message.counterpart.bare_jid, message.account, Conversation.Type.CHAT); + } else if (message.type_ == Entities.Message.Type.GROUPCHAT) { + return create_conversation(message.counterpart.bare_jid, message.account, Conversation.Type.GROUPCHAT); + } else if (message.type_ == Entities.Message.Type.GROUPCHAT_PM) { + return create_conversation(message.counterpart, message.account, Conversation.Type.GROUPCHAT_PM); + } } return null; } -- cgit v1.3