mirror of
https://github.com/ethereum/go-ethereum.git
synced 2026-07-27 15:16:43 +00:00
internal/ethapi: add max gas in gaspool while executing eth_call
This commit is contained in:
parent
eb7f26f380
commit
dc8b2b4a6a
1 changed files with 5 additions and 9 deletions
|
|
@ -989,18 +989,14 @@ func doCall(ctx context.Context, b Backend, args TransactionArgs, state *state.S
|
|||
// Make sure the context is cancelled when the call has completed
|
||||
// this makes sure resources are cleaned up.
|
||||
defer cancel()
|
||||
gp := new(core.GasPool)
|
||||
if globalGasCap == 0 {
|
||||
gp.AddGas(gomath.MaxUint64)
|
||||
} else {
|
||||
gp.AddGas(globalGasCap)
|
||||
}
|
||||
return applyMessage(ctx, b, args, state, header, timeout, gp, &blockCtx, &vm.Config{NoBaseFee: true}, precompiles, true)
|
||||
// Note(bor): don't set this to global max cap (as done in geth) as it leads to issues in devnet.
|
||||
gp := new(core.GasPool).AddGas(gomath.MaxUint64)
|
||||
return applyMessage(ctx, b, args, state, header, timeout, globalGasCap, gp, &blockCtx, &vm.Config{NoBaseFee: true}, precompiles, true)
|
||||
}
|
||||
|
||||
func applyMessage(ctx context.Context, b Backend, args TransactionArgs, state *state.StateDB, header *types.Header, timeout time.Duration, gp *core.GasPool, blockContext *vm.BlockContext, vmConfig *vm.Config, precompiles vm.PrecompiledContracts, skipChecks bool) (*core.ExecutionResult, error) {
|
||||
func applyMessage(ctx context.Context, b Backend, args TransactionArgs, state *state.StateDB, header *types.Header, timeout time.Duration, globalGasCap uint64, gp *core.GasPool, blockContext *vm.BlockContext, vmConfig *vm.Config, precompiles vm.PrecompiledContracts, skipChecks bool) (*core.ExecutionResult, error) {
|
||||
// Get a new instance of the EVM.
|
||||
if err := args.CallDefaults(gp.Gas(), blockContext.BaseFee, b.ChainConfig().ChainID); err != nil {
|
||||
if err := args.CallDefaults(globalGasCap, blockContext.BaseFee, b.ChainConfig().ChainID); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
msg := args.ToMessage(header.BaseFee, skipChecks, skipChecks)
|
||||
|
|
|
|||
Loading…
Reference in a new issue