Fix getPeer(self) bug if I am the controller.

This commit is contained in:
Adam Ierymenko 2016-06-28 22:49:01 +00:00
parent 0410fd4824
commit 7b7ab823b0

View File

@ -228,7 +228,9 @@ void Multicaster::send(
gs.lastExplicitGather = now;
SharedPtr<Peer> explicitGatherPeers[2];
explicitGatherPeers[0] = RR->topology->getBestRoot();
explicitGatherPeers[1] = RR->topology->getPeer(Network::controllerFor(nwid));
const Address nwidc(Network::controllerFor(nwid));
if (nwidc != RR->identity.address())
explicitGatherPeers[1] = RR->topology->getPeer(nwidc);
for(unsigned int k=0;k<2;++k) {
const SharedPtr<Peer> &p = explicitGatherPeers[k];
if (!p)