浏览代码

Also send MULTICAST_LIKEs to controllers.

Adam Ierymenko 9 年之前
父节点
当前提交
20278bb9e4
共有 1 个文件被更改,包括 7 次插入0 次删除
  1. 7 0
      node/Network.cpp

+ 7 - 0
node/Network.cpp

@@ -1237,6 +1237,13 @@ void Network::_announceMulticastGroups(const MulticastGroup *const onlyThis)
 			}
 			_announceMulticastGroupsTo(*a,groups);
 		}
+
+		// Announce to controller, which does not need our COM since it obviously
+		// knows if we are a member. Of course if we already did or are going to
+		// below then we can skip it here.
+		const Address c(controller());
+		if ( (std::find(upstreams.begin(),upstreams.end(),c) == upstreams.end()) && (!_memberships.contains(c)) )
+			_announceMulticastGroupsTo(c,groups);
 	}
 
 	// Make sure that all "network anchors" have Membership records so we will