diff --git a/subscriptionstore.cpp b/subscriptionstore.cpp index 7dbfeba..7c5ca5b 100644 --- a/subscriptionstore.cpp +++ b/subscriptionstore.cpp @@ -144,12 +144,11 @@ void SubscriptionStore::addSubscription(std::shared_ptr &client, const s { const std::shared_ptr &ses = session_it->second; deepestNode->addSubscriber(ses, qos); + lock_guard.unlock(); uint64_t count = giveClientRetainedMessages(ses, subtopics, qos); client->getThreadData()->incrementSentMessageCount(count); } } - - lock_guard.unlock(); } void SubscriptionStore::removeSubscription(std::shared_ptr &client, const std::string &topic)