diff --git a/src/core/core-chat-room.cpp b/src/core/core-chat-room.cpp index 08f5526a9..745a3944d 100644 --- a/src/core/core-chat-room.cpp +++ b/src/core/core-chat-room.cpp @@ -106,11 +106,9 @@ shared_ptr CorePrivate::createClientGroupChatRoom (const strin void CorePrivate::insertChatRoom (const shared_ptr &chatRoom) { L_ASSERT(chatRoom); - - if (!chatRoomsById[chatRoom->getChatRoomId()]) { - chatRooms.push_back(chatRoom); - chatRoomsById[chatRoom->getChatRoomId()] = chatRoom; - } + L_ASSERT(!chatRoomsById[chatRoom->getChatRoomId()]); + chatRooms.push_back(chatRoom); + chatRoomsById[chatRoom->getChatRoomId()] = chatRoom; } void CorePrivate::insertChatRoomWithDb (const shared_ptr &chatRoom) { @@ -119,6 +117,8 @@ void CorePrivate::insertChatRoomWithDb (const shared_ptr &chat } void CorePrivate::loadChatRooms () { + chatRooms.clear(); + chatRoomsById.clear(); for (auto &chatRoom : mainDb->getChatRooms()) insertChatRoom(chatRoom); }