aboutsummaryrefslogtreecommitdiffstats
path: root/block_pool.go
diff options
context:
space:
mode:
Diffstat (limited to 'block_pool.go')
-rw-r--r--block_pool.go14
1 files changed, 7 insertions, 7 deletions
diff --git a/block_pool.go b/block_pool.go
index dcddca58e..38302a4c7 100644
--- a/block_pool.go
+++ b/block_pool.go
@@ -13,6 +13,7 @@ import (
"github.com/ethereum/go-ethereum/chain/types"
"github.com/ethereum/go-ethereum/ethutil"
"github.com/ethereum/go-ethereum/logger"
+ "github.com/ethereum/go-ethereum/state"
"github.com/ethereum/go-ethereum/wire"
)
@@ -310,10 +311,6 @@ out:
}
}
- // TODO figure out whether we were catching up
- // If caught up and just a new block has been propagated:
- // sm.eth.EventMux().Post(NewBlockEvent{block})
- // otherwise process and don't emit anything
if len(blocks) > 0 {
chainManager := self.eth.ChainManager()
// Test and import
@@ -335,10 +332,13 @@ out:
self.peer = nil
} else {
if !chain.IsTDError(err) {
- chainManager.InsertChain(bchain)
- for _, block := range blocks {
+ chainManager.InsertChain(bchain, func(block *types.Block, messages state.Messages) {
+ self.eth.EventMux().Post(chain.NewBlockEvent{block})
+ self.eth.EventMux().Post(messages)
+
self.Remove(block.Hash())
- }
+ })
+
}
}
}