diff --git a/subscriptionstore.cpp b/subscriptionstore.cpp index 0fbbde5..75f926a 100644 --- a/subscriptionstore.cpp +++ b/subscriptionstore.cpp @@ -443,9 +443,10 @@ int SubscriptionNode::cleanSubscriptions() auto childrenIt = children.begin(); while(childrenIt != children.end()) { - subscribersLeftInChildren += childrenIt->second->cleanSubscriptions(); + int n = childrenIt->second->cleanSubscriptions(); + subscribersLeftInChildren += n; - if (subscribersLeftInChildren > 0) + if (n > 0) childrenIt++; else {