OSDN Git Service

fix(bcrp): fix bcrp when apply block and detach block (#2081)
[bytom/bytom.git] / protocol / block.go
index fbb8fa9..d2d0d44 100644 (file)
@@ -114,7 +114,10 @@ func (c *Chain) reorganizeChain(blockHeader *types.BlockHeader) error {
                        return err
                }
 
-               contractView.DetachBlock(b)
+               if err := contractView.DetachBlock(b); err != nil {
+                       return err
+               }
+
                for _, tx := range b.Transactions[1:] {
                        txsToRestore[tx.ID] = tx
                }
@@ -138,7 +141,10 @@ func (c *Chain) reorganizeChain(blockHeader *types.BlockHeader) error {
                        return err
                }
 
-               contractView.ApplyBlock(b)
+               if err := contractView.ApplyBlock(b); err != nil {
+                       return err
+               }
+
                for _, tx := range b.Transactions[1:] {
                        if _, ok := txsToRestore[tx.ID]; !ok {
                                txsToRemove[tx.ID] = tx