diff --git a/src/core/core-chat-room.cpp b/src/core/core-chat-room.cpp index c5d1484d3..91a25a0f2 100644 --- a/src/core/core-chat-room.cpp +++ b/src/core/core-chat-room.cpp @@ -64,7 +64,7 @@ static inline string resolveWorkaroundClientGroupChatRoomAddress ( // ----------------------------------------------------------------------------- -shared_ptr CorePrivate::createChatRoom (const Address &peerAddress, bool isRtt) { +shared_ptr CorePrivate::createBasicChatRoom (const Address &peerAddress, bool isRtt) { L_Q(); shared_ptr chatRoom; @@ -75,7 +75,7 @@ shared_ptr CorePrivate::createChatRoom (const Address &peerAddress, bo chatRoom = make_shared(q->getSharedFromThis(), peerAddress); ChatRoomPrivate *dChatRoom = chatRoom->getPrivate(); - insertChatRoom(chatRoom); + dChatRoom->setState(ChatRoom::State::Instantiated); dChatRoom->setState(ChatRoom::State::Created); @@ -176,7 +176,8 @@ shared_ptr Core::getOrCreateBasicChatRoom (const Address &peerAddress, if (chatRoom) return chatRoom; - chatRoom = d->createChatRoom(peerAddress, isRtt); + chatRoom = d->createBasicChatRoom(peerAddress, isRtt); + d->insertChatRoom(chatRoom); d->insertChatRoomWithDb(chatRoom); return chatRoom; diff --git a/src/core/core-p.h b/src/core/core-p.h index 6b894ce86..c136caf94 100644 --- a/src/core/core-p.h +++ b/src/core/core-p.h @@ -35,7 +35,7 @@ public: void insertChatRoom (const std::shared_ptr &chatRoom); void insertChatRoomWithDb (const std::shared_ptr &chatRoom); - std::shared_ptr createChatRoom (const Address &peerAddress, bool isRtt); + std::shared_ptr createBasicChatRoom (const Address &peerAddress, bool isRtt); private: void deleteChatRoom (const std::string &peerAddress); diff --git a/src/db/main-db.cpp b/src/db/main-db.cpp index 2c47d5a59..5fddd7267 100644 --- a/src/db/main-db.cpp +++ b/src/db/main-db.cpp @@ -1186,7 +1186,7 @@ MainDb::MainDb (const shared_ptr &core) : CoreAccessor(core), AbstractDb(* (void)lastNotifyId; if (capabilities & static_cast(ChatRoom::Capabilities::Basic)) { - chatRoom = core->getPrivate()->createChatRoom( + chatRoom = core->getPrivate()->createBasicChatRoom( Address(sipAddress), capabilities & static_cast(ChatRoom::Capabilities::RealTimeText) );