Skip to content

Commit

Permalink
core/vm: evm fix panic (ethereum#23047)
Browse files Browse the repository at this point in the history
* core/vm: evm fix panic

* core/vm/runtime: default to params.initialbasefee
  • Loading branch information
holiman authored Jun 16, 2021
1 parent ae315ef commit 080b6eb
Show file tree
Hide file tree
Showing 2 changed files with 6 additions and 1 deletion.
1 change: 1 addition & 0 deletions core/vm/runtime/env.go
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,7 @@ func NewEnv(cfg *Config) *vm.EVM {
Time: cfg.Time,
Difficulty: cfg.Difficulty,
GasLimit: cfg.GasLimit,
BaseFee: cfg.BaseFee,
}

return vm.NewEVM(blockContext, txContext, cfg.State, cfg.ChainConfig, cfg.EVMConfig)
Expand Down
6 changes: 5 additions & 1 deletion core/vm/runtime/runtime.go
Original file line number Diff line number Diff line change
Expand Up @@ -43,6 +43,7 @@ type Config struct {
Value *big.Int
Debug bool
EVMConfig vm.Config
BaseFee *big.Int

State *state.StateDB
GetHashFn func(n uint64) common.Hash
Expand All @@ -66,7 +67,7 @@ func setDefaults(cfg *Config) {
IstanbulBlock: new(big.Int),
MuirGlacierBlock: new(big.Int),
BerlinBlock: new(big.Int),
LondonBlock: nil,
LondonBlock: new(big.Int),
}
}

Expand All @@ -93,6 +94,9 @@ func setDefaults(cfg *Config) {
return common.BytesToHash(crypto.Keccak256([]byte(new(big.Int).SetUint64(n).String())))
}
}
if cfg.BaseFee == nil {
cfg.BaseFee = big.NewInt(params.InitialBaseFee)
}
}

// Execute executes the code using the input as call data during the execution.
Expand Down

0 comments on commit 080b6eb

Please sign in to comment.