Handle double subscriptions

This commit is contained in:
Alex Hultman
2019-11-08 12:16:41 +01:00
parent 606d8a793d
commit 37d1cdf29d
+5 -3
View File
@@ -229,10 +229,12 @@ public:
} }
/* Add socket to Topic's Set */ /* Add socket to Topic's Set */
iterator->subs.insert(subscriber); auto [it, inserted] = iterator->subs.insert(subscriber);
/* Add Topic to list of subscriptions */ /* Add Topic to list of subscriptions only if we weren't already subscribed */
subscriber->subscriptions.push_back(iterator); if (inserted) {
subscriber->subscriptions.push_back(iterator);
}
} }
void publish(std::string_view topic, std::string_view message) { void publish(std::string_view topic, std::string_view message) {