From 4ae37d25a2bd79fa98a5e7845342b98133d2cc6f Mon Sep 17 00:00:00 2001 From: Wei-Ning Huang Date: Tue, 19 Mar 2019 15:35:32 +0800 Subject: dex: do not start watchcat when blockchain is empty (#273) --- dex/blockproposer.go | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) (limited to 'dex/blockproposer.go') diff --git a/dex/blockproposer.go b/dex/blockproposer.go index 63d424ab6..bcc150747 100644 --- a/dex/blockproposer.go +++ b/dex/blockproposer.go @@ -121,16 +121,20 @@ func (b *blockProposer) syncConsensus() (*dexCore.Consensus, error) { // Start the watchCat. log.Info("Starting sync watchCat ...") + b.watchCat.Start() defer b.watchCat.Stop() // Feed the current block we have in local blockchain. cb := b.dex.blockchain.CurrentBlock() - var block coreTypes.Block - if err := rlp.DecodeBytes(cb.Header().DexconMeta, &block); err != nil { - panic(err) + + if cb.NumberU64() > 0 { + var block coreTypes.Block + if err := rlp.DecodeBytes(cb.Header().DexconMeta, &block); err != nil { + panic(err) + } + b.watchCat.Feed(block.Position) } - b.watchCat.Feed(block.Position) blocksToSync := func(coreHeight, height uint64) []*coreTypes.Block { var blocks []*coreTypes.Block -- cgit