From 5212bb83e8c257cfd85f9e891740369ecad36a91 Mon Sep 17 00:00:00 2001 From: Mission Liao Date: Wed, 24 Oct 2018 11:27:10 +0800 Subject: core: fix panic when proposed block is nil (#248) --- core/consensus.go | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/core/consensus.go b/core/consensus.go index c7bef4b..9e6768c 100644 --- a/core/consensus.go +++ b/core/consensus.go @@ -81,6 +81,10 @@ func (recv *consensusBAReceiver) ProposeVote(vote *types.Vote) { func (recv *consensusBAReceiver) ProposeBlock() common.Hash { block := recv.consensus.proposeBlock(recv.chainID, recv.round) + if block == nil { + recv.consensus.logger.Error("unable to propose block") + return nullBlockHash + } recv.consensus.baModules[recv.chainID].addCandidateBlock(block) if err := recv.consensus.preProcessBlock(block); err != nil { recv.consensus.logger.Error("Failed to pre-process block", "error", err) -- cgit v1.2.3