Commit c37238ca authored by Felföldi Zsolt's avatar Felföldi Zsolt Committed by Péter Szilágyi

les: fix retriever logic (#17705)

parent da29332c
...@@ -212,7 +212,7 @@ func (r *sentReq) stateRequesting() reqStateFn { ...@@ -212,7 +212,7 @@ func (r *sentReq) stateRequesting() reqStateFn {
// no need to go to stopped state because waiting() already returned false // no need to go to stopped state because waiting() already returned false
return nil return nil
} }
case rpSoftTimeout: case rpSoftTimeout, rpDeliveredInvalid:
// last request timed out, try asking a new peer // last request timed out, try asking a new peer
go r.tryRequest() go r.tryRequest()
r.lastReqQueued = true r.lastReqQueued = true
...@@ -242,7 +242,11 @@ func (r *sentReq) stateNoMorePeers() reqStateFn { ...@@ -242,7 +242,11 @@ func (r *sentReq) stateNoMorePeers() reqStateFn {
r.stop(nil) r.stop(nil)
return r.stateStopped return r.stateStopped
} }
return r.stateNoMorePeers if r.waiting() {
return r.stateNoMorePeers
}
r.stop(light.ErrNoPeers)
return nil
case <-r.stopCh: case <-r.stopCh:
return r.stateStopped return r.stateStopped
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment