evm: conditional hook snapshot (#520)

This commit is contained in:
Federico Kunze Küllmer 2021-09-02 19:47:39 +02:00 committed by GitHub
parent 770ce367ac
commit 5fac39db38
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -175,8 +175,11 @@ func (k *Keeper) ApplyTransaction(tx *ethtypes.Transaction) (*types.MsgEthereumT
panic("context stack shouldn't be dirty before apply message")
}
// Contains the tx processing and post processing in same scope
revision := k.Snapshot()
var revision int
if k.hooks != nil {
// snapshot to contain the tx processing and post processing in same scope
revision = k.Snapshot()
}
// pass false to execute in real mode, which do actual gas refunding
res, err := k.ApplyMessage(evm, msg, ethCfg, false)