diff --git a/src/jamidht/conversation_module.cpp b/src/jamidht/conversation_module.cpp index 747c02de4ed30ad3b9e71a803a71dc4fd473958e..f387d5cbf0703113d6b8d850be2bced3696daf9d 100644 --- a/src/jamidht/conversation_module.cpp +++ b/src/jamidht/conversation_module.cpp @@ -783,6 +783,7 @@ ConversationModule::Impl::handlePendingConversation(const std::string& conversat } catch (const std::exception& e) { JAMI_WARN("Something went wrong when cloning conversation: %s", e.what()); } + lk.lock(); erasePending(); } diff --git a/test/unitTest/conversation/conversation.cpp b/test/unitTest/conversation/conversation.cpp index 92a37f12e714fd7b4548b3c9f69b080a8d77fb92..410a276bbae54643c5de60d3b36f978fade41b88 100644 --- a/test/unitTest/conversation/conversation.cpp +++ b/test/unitTest/conversation/conversation.cpp @@ -3402,10 +3402,12 @@ ConversationTest::testCloneFromMultipleDevice() // Alice re-adds Bob auto oldConv = convId; + conversationRmAlice = false; aliceAccount->addContact(bobUri); aliceAccount->sendTrustRequest(bobUri, {}); // This should retrieve the conversation from Bob and don't show any error CPPUNIT_ASSERT(!cv.wait_for(lk, 10s, [&]() { return errorDetected; })); + CPPUNIT_ASSERT(conversationRmAlice); CPPUNIT_ASSERT(oldConv == convId); // Check that convId didn't change and conversation is ready. }