diff --git a/eth/tracers/api.go b/eth/tracers/api.go index 7d9b61f20c..06d3a73f86 100644 --- a/eth/tracers/api.go +++ b/eth/tracers/api.go @@ -810,9 +810,7 @@ func (api *API) TraceCall(ctx context.Context, args ethapi.TransactionArgs, bloc config.BlockOverrides.Apply(&vmctx) } // Execute the trace - // TODO(daniel): replace block.BaseFee() with vmctx.BaseFee - // reference: https://github.com/ethereum/go-ethereum/pull/29051 - msg, err := args.ToMessage(api.backend, block.Number(), api.backend.RPCGasCap(), block.BaseFee()) + msg, err := args.ToMessage(api.backend, block.Number(), api.backend.RPCGasCap(), vmctx.BaseFee) if err != nil { return nil, err } diff --git a/internal/ethapi/api.go b/internal/ethapi/api.go index e11758326b..9523a55a78 100644 --- a/internal/ethapi/api.go +++ b/internal/ethapi/api.go @@ -1153,20 +1153,18 @@ func DoCall(ctx context.Context, b Backend, args TransactionArgs, blockNrOrHash return nil, err } - // TODO: replace header.BaseFee with blockCtx.BaseFee - // reference: https://github.com/ethereum/go-ethereum/pull/29051 - msg, err := args.ToMessage(b, header.Number, globalGasCap, header.BaseFee) + // Get a new instance of the EVM. + blockCtx := core.NewEVMBlockContext(header, NewChainContext(ctx, b), nil) + if blockOverrides != nil { + blockOverrides.Apply(&blockCtx) + } + msg, err := args.ToMessage(b, header.Number, globalGasCap, blockCtx.BaseFee) if err != nil { return nil, err } msg.BalanceTokenFee = new(big.Int).SetUint64(msg.GasLimit) msg.BalanceTokenFee.Mul(msg.BalanceTokenFee, msg.GasPrice) - // Get a new instance of the EVM. - blockCtx := core.NewEVMBlockContext(header, NewChainContext(ctx, b), nil) - if blockOverrides != nil { - blockOverrides.Apply(&blockCtx) - } evm, vmError, err := b.GetEVM(ctx, msg, statedb, XDCxState, header, &vm.Config{NoBaseFee: true}, &blockCtx) if err != nil { return nil, err