diff --git a/eth/handler.go b/eth/handler.go index d1a6c040c6..96bb554ddc 100644 --- a/eth/handler.go +++ b/eth/handler.go @@ -491,7 +491,11 @@ func (pm *ProtocolManager) handleMsg(p *peer) error { uncles[i] = body.Uncles } // Filter out any explicitly requested bodies, deliver the rest to the downloader - if trasactions, uncles := pm.fetcher.FilterBodies(trasactions, uncles, time.Now()); len(trasactions) > 0 || len(uncles) > 0 { + filter := len(trasactions) > 0 || len(uncles) > 0 + if filter { + trasactions, uncles = pm.fetcher.FilterBodies(trasactions, uncles, time.Now()) + } + if len(trasactions) > 0 || len(uncles) > 0 || !filter { err := pm.downloader.DeliverBodies(p.id, trasactions, uncles) if err != nil { glog.V(logger.Debug).Infoln(err)