fix SetHead func to call repair func

This commit is contained in:
JamesRay 2019-11-04 18:05:36 +08:00
parent b566cfdffd
commit 934749ecbe

View file

@ -400,8 +400,9 @@ func (bc *BlockChain) SetHead(head uint64) error {
if newHeadBlock == nil { if newHeadBlock == nil {
newHeadBlock = bc.genesisBlock newHeadBlock = bc.genesisBlock
} else { } else {
if _, err := state.New(newHeadBlock.Root(), bc.stateCache); err != nil { err := bc.repair(&newHeadBlock)
// Rewound state missing, rolled back to before pivot, reset to genesis if err != nil {
// Rewound block missing, rolled back to genesis
newHeadBlock = bc.genesisBlock newHeadBlock = bc.genesisBlock
} }
} }