fix trace Transaction

This commit is contained in:
linhaiyang 2021-10-27 15:51:05 +08:00
parent aa3cc05170
commit b3df9d6677
2 changed files with 2 additions and 1 deletions

View file

@ -154,7 +154,7 @@ func ApplyTransaction(config *params.ChainConfig, bc ChainContext, author *commo
func ApplyTransactionForPreExec(config *params.ChainConfig, bc ChainContext, author *common.Address, gp *GasPool, statedb *state.StateDB, header *types.Header, tx *types.Transaction, msg types.Message, usedGas *uint64, cfg vm.Config) (*types.Receipt, error) {
blockContext := NewEVMBlockContext(header, bc, author)
blockContext.BaseFee = big.NewInt(0)
vmenv := vm.NewEVM(blockContext, vm.TxContext{}, statedb, config, cfg)
vmenv.Context.BaseFee = big.NewInt(0)
return applyTransaction(msg, config, bc, author, gp, statedb, header.Number, header.Hash(), tx, usedGas, vmenv)
}

View file

@ -188,6 +188,7 @@ func (api *PreExecAPI) TraceTransaction(ctx context.Context, origin *PreExecTx,
}
// Run the transaction with tracing enabled.
vmenv := vm.NewEVM(core.NewEVMBlockContext(d.header, bc, nil), txContext, d.stateDb, bc.Config(), vm.Config{Debug: true, Tracer: tracer})
vmenv.Context.BaseFee = big.NewInt(0)
// Call Prepare to clear out the statedb access list
d.stateDb.Prepare(d.tx.Hash(), txIndex)