From cbb32b13fb6203f8ba0e905507883b34cca244de Mon Sep 17 00:00:00 2001 From: Gav Wood Date: Sun, 16 Feb 2014 18:47:10 +0000 Subject: [PATCH] Peer discovery fix. --- libethereum/PeerNetwork.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/libethereum/PeerNetwork.cpp b/libethereum/PeerNetwork.cpp index f5ede2725..7aa6942d5 100644 --- a/libethereum/PeerNetwork.cpp +++ b/libethereum/PeerNetwork.cpp @@ -263,6 +263,7 @@ bool PeerSession::interpret(RLP const& _r) if (i.second.first == ep) goto CONTINUE; m_server->m_incomingPeers[id] = make_pair(ep, 0); + m_server->m_freePeers.push_back(id); clogS(NetMessageDetail) << "New peer: " << ep << "(" << id << ")"; CONTINUE:; } @@ -1034,7 +1035,7 @@ bool PeerServer::sync(BlockChain& _bc, TransactionQueue& _tq, Overlay& _o) auto x = time(0) % m_freePeers.size(); m_incomingPeers[m_freePeers[x]].second++; - connect(m_incomingPeers[m_freePeers[time(0) % m_freePeers.size()]].first); + connect(m_incomingPeers[m_freePeers[x]].first); m_freePeers.erase(m_freePeers.begin() + x); } }