summaryrefslogtreecommitdiff
path: root/node/WindowsEthernetTap.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'node/WindowsEthernetTap.cpp')
-rw-r--r--node/WindowsEthernetTap.cpp4
1 files changed, 1 insertions, 3 deletions
diff --git a/node/WindowsEthernetTap.cpp b/node/WindowsEthernetTap.cpp
index ea7f7510..2e8de8c1 100644
--- a/node/WindowsEthernetTap.cpp
+++ b/node/WindowsEthernetTap.cpp
@@ -616,8 +616,6 @@ bool WindowsEthernetTap::updateMulticastGroups(std::set<MulticastGroup> &groups)
}
}
- newGroups.insert(_blindWildcardMulticastGroup); // always join this
-
bool changed = false;
for(std::set<MulticastGroup>::iterator mg(newGroups.begin());mg!=newGroups.end();++mg) {
@@ -627,7 +625,7 @@ bool WindowsEthernetTap::updateMulticastGroups(std::set<MulticastGroup> &groups)
}
}
for(std::set<MulticastGroup>::iterator mg(groups.begin());mg!=groups.end();) {
- if (!newGroups.count(*mg)) {
+ if ((!newGroups.count(*mg))&&(*mg != _blindWildcardMulticastGroup)) {
groups.erase(mg++);
changed = true;
} else ++mg;