diff options
-rw-r--r-- | coreth.go | 4 | ||||
-rw-r--r-- | plugin/evm/block.go | 4 |
2 files changed, 7 insertions, 1 deletions
@@ -90,6 +90,10 @@ func (self *ETHChain) SubscribeNewMinedBlockEvent() *event.TypeMuxSubscription { return self.backend.Miner().GetWorkerMux().Subscribe(core.NewMinedBlockEvent{}) } +func (self *ETHChain) BlockChain() *core.BlockChain { + return self.backend.BlockChain() +} + func (self *ETHChain) VerifyBlock(block *types.Block) bool { txnHash := types.DeriveSha(block.Transactions(), new(trie.Trie)) uncleHash := types.CalcUncleHash(block.Uncles()) diff --git a/plugin/evm/block.go b/plugin/evm/block.go index 1e1d710..556f171 100644 --- a/plugin/evm/block.go +++ b/plugin/evm/block.go @@ -136,7 +136,9 @@ func (b *Block) Verify() error { if utx.SemanticVerify(vm, tx) != nil { return errInvalidBlock } - if utx.EVMStateTransfer(vm, pState) != nil { + bc := vm.chain.BlockChain() + _, _, _, err = bc.Processor().Process(b.ethBlock, pState, *bc.GetVMConfig()) + if err != nil { return errInvalidBlock } } |