|
|
|
@ -1018,10 +1018,8 @@ func DoCall(ctx context.Context, b Backend, args TransactionArgs, blockNrOrHash |
|
|
|
|
if blockOverrides != nil { |
|
|
|
|
blockOverrides.Apply(&blockCtx) |
|
|
|
|
} |
|
|
|
|
evm, vmError, err := b.GetEVM(ctx, msg, state, header, &vm.Config{NoBaseFee: true}, &blockCtx) |
|
|
|
|
if err != nil { |
|
|
|
|
return nil, err |
|
|
|
|
} |
|
|
|
|
evm, vmError := b.GetEVM(ctx, msg, state, header, &vm.Config{NoBaseFee: true}, &blockCtx) |
|
|
|
|
|
|
|
|
|
// Wait for the context to be done and cancel the evm. Even if the
|
|
|
|
|
// EVM has finished, cancelling may be done (repeatedly)
|
|
|
|
|
go func() { |
|
|
|
@ -1514,10 +1512,7 @@ func AccessList(ctx context.Context, b Backend, blockNrOrHash rpc.BlockNumberOrH |
|
|
|
|
// Apply the transaction with the access list tracer
|
|
|
|
|
tracer := logger.NewAccessListTracer(accessList, args.from(), to, precompiles) |
|
|
|
|
config := vm.Config{Tracer: tracer, NoBaseFee: true} |
|
|
|
|
vmenv, _, err := b.GetEVM(ctx, msg, statedb, header, &config, nil) |
|
|
|
|
if err != nil { |
|
|
|
|
return nil, 0, nil, err |
|
|
|
|
} |
|
|
|
|
vmenv, _ := b.GetEVM(ctx, msg, statedb, header, &config, nil) |
|
|
|
|
res, err := core.ApplyMessage(vmenv, msg, new(core.GasPool).AddGas(msg.GasLimit)) |
|
|
|
|
if err != nil { |
|
|
|
|
return nil, 0, nil, fmt.Errorf("failed to apply transaction: %v err: %v", args.toTransaction().Hash(), err) |
|
|
|
|