core: replace if-else chain with tagged switch on err (#1751)

This commit is contained in:
wit liu 2025-11-14 22:34:33 +08:00 committed by GitHub
parent 0d6807d15b
commit 7641bcfd19
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -2095,16 +2095,18 @@ func (bc *BlockChain) PrepareBlock(block *types.Block) (err error) {
return err return err
} }
result, err := bc.getResultBlock(block, false) result, err := bc.getResultBlock(block, false)
if err == nil { switch err {
case nil:
bc.resultProcess.Add(block.Hash(), result) bc.resultProcess.Add(block.Hash(), result)
return nil return nil
} else if err == ErrKnownBlock { case ErrKnownBlock:
return nil return nil
} else if err == ErrStopPreparingBlock { case ErrStopPreparingBlock:
log.Debug("Stop prepare a block because calculating", "number", block.NumberU64(), "hash", block.Hash(), "validator", block.Header().Validator) log.Debug("Stop prepare a block because calculating", "number", block.NumberU64(), "hash", block.Hash(), "validator", block.Header().Validator)
return nil return nil
default:
return err
} }
return err
} }
func (bc *BlockChain) getResultBlock(block *types.Block, verifiedM2 bool) (*ResultProcessBlock, error) { func (bc *BlockChain) getResultBlock(block *types.Block, verifiedM2 bool) (*ResultProcessBlock, error) {