mirror of
https://github.com/ethereum/go-ethereum.git
synced 2026-05-05 15:52:55 +00:00
p2p/discover: fix bug in lookup
This commit is contained in:
parent
4ed8f5ee2b
commit
e58e7f7927
1 changed files with 3 additions and 3 deletions
|
|
@ -78,7 +78,8 @@ func (it *lookup) advance() bool {
|
||||||
select {
|
select {
|
||||||
case nodes := <-it.replyCh:
|
case nodes := <-it.replyCh:
|
||||||
it.queries--
|
it.queries--
|
||||||
if it.addNodes(nodes) {
|
it.addNodes(nodes)
|
||||||
|
if !it.empty() {
|
||||||
return true
|
return true
|
||||||
}
|
}
|
||||||
case <-it.cancelCh:
|
case <-it.cancelCh:
|
||||||
|
|
@ -88,7 +89,7 @@ func (it *lookup) advance() bool {
|
||||||
return false
|
return false
|
||||||
}
|
}
|
||||||
|
|
||||||
func (it *lookup) addNodes(nodes []*enode.Node) (done bool) {
|
func (it *lookup) addNodes(nodes []*enode.Node) {
|
||||||
it.replyBuffer = it.replyBuffer[:0]
|
it.replyBuffer = it.replyBuffer[:0]
|
||||||
for _, n := range nodes {
|
for _, n := range nodes {
|
||||||
if n != nil && !it.seen[n.ID()] {
|
if n != nil && !it.seen[n.ID()] {
|
||||||
|
|
@ -97,7 +98,6 @@ func (it *lookup) addNodes(nodes []*enode.Node) (done bool) {
|
||||||
it.replyBuffer = append(it.replyBuffer, n)
|
it.replyBuffer = append(it.replyBuffer, n)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return len(it.replyBuffer) == 0
|
|
||||||
}
|
}
|
||||||
|
|
||||||
func (it *lookup) shutdown() {
|
func (it *lookup) shutdown() {
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue