aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorobscuren <geffobscura@gmail.com>2015-03-24 05:59:19 +0800
committerobscuren <geffobscura@gmail.com>2015-03-24 05:59:19 +0800
commit0ee0094cc02e81d3a9f5b00cd7cdd421ee069492 (patch)
tree46a350004fb700c1cd8f88224c92f1c639c6ed6b
parent7b8a47f4846cd821ecc1f96e381980f7bca1922b (diff)
downloaddexon-0ee0094cc02e81d3a9f5b00cd7cdd421ee069492.tar
dexon-0ee0094cc02e81d3a9f5b00cd7cdd421ee069492.tar.gz
dexon-0ee0094cc02e81d3a9f5b00cd7cdd421ee069492.tar.bz2
dexon-0ee0094cc02e81d3a9f5b00cd7cdd421ee069492.tar.lz
dexon-0ee0094cc02e81d3a9f5b00cd7cdd421ee069492.tar.xz
dexon-0ee0094cc02e81d3a9f5b00cd7cdd421ee069492.tar.zst
dexon-0ee0094cc02e81d3a9f5b00cd7cdd421ee069492.zip
better block propagation
-rw-r--r--core/chain_manager.go4
-rw-r--r--eth/backend.go4
2 files changed, 4 insertions, 4 deletions
diff --git a/core/chain_manager.go b/core/chain_manager.go
index 3e030838a..f0d3fd4cf 100644
--- a/core/chain_manager.go
+++ b/core/chain_manager.go
@@ -8,11 +8,11 @@ import (
"sync"
"github.com/ethereum/go-ethereum/common"
+ "github.com/ethereum/go-ethereum/core/state"
"github.com/ethereum/go-ethereum/core/types"
"github.com/ethereum/go-ethereum/event"
"github.com/ethereum/go-ethereum/logger"
"github.com/ethereum/go-ethereum/rlp"
- "github.com/ethereum/go-ethereum/core/state"
)
var (
@@ -523,7 +523,7 @@ out:
case ChainEvent:
// We need some control over the mining operation. Acquiring locks and waiting for the miner to create new block takes too long
// and in most cases isn't even necessary.
- if i == ev.canonicalCount {
+ if i+1 == ev.canonicalCount {
self.eventMux.Post(ChainHeadEvent{event.Block})
}
case ChainSplitEvent:
diff --git a/eth/backend.go b/eth/backend.go
index 446f06531..3f7f7c2cb 100644
--- a/eth/backend.go
+++ b/eth/backend.go
@@ -355,7 +355,7 @@ func (s *Ethereum) Start() error {
go s.txBroadcastLoop()
// broadcast mined blocks
- s.blockSub = s.eventMux.Subscribe(core.NewMinedBlockEvent{})
+ s.blockSub = s.eventMux.Subscribe(core.ChainHeadEvent{})
go s.blockBroadcastLoop()
servlogger.Infoln("Server started")
@@ -421,7 +421,7 @@ func (self *Ethereum) blockBroadcastLoop() {
// automatically stops if unsubscribe
for obj := range self.blockSub.Chan() {
switch ev := obj.(type) {
- case core.NewMinedBlockEvent:
+ case core.ChainHeadEvent:
self.net.Broadcast("eth", NewBlockMsg, []interface{}{ev.Block, ev.Block.Td})
}
}