mirror of
https://github.com/ethereum/go-ethereum.git
synced 2026-07-16 18:00:46 +00:00
parent
81d0db2344
commit
35d5bbd240
1 changed files with 1 additions and 7 deletions
|
|
@ -43,16 +43,10 @@ func makeGasSStoreFunc(clearingRefund uint64) gasFunc {
|
||||||
cost = uint64(0)
|
cost = uint64(0)
|
||||||
)
|
)
|
||||||
// Check slot presence in the access list
|
// Check slot presence in the access list
|
||||||
if addrPresent, slotPresent := evm.StateDB.SlotInAccessList(contract.Address(), slot); !slotPresent {
|
if _, slotPresent := evm.StateDB.SlotInAccessList(contract.Address(), slot); !slotPresent {
|
||||||
cost = params.ColdSloadCostEIP2929
|
cost = params.ColdSloadCostEIP2929
|
||||||
// If the caller cannot afford the cost, this change will be rolled back
|
// If the caller cannot afford the cost, this change will be rolled back
|
||||||
evm.StateDB.AddSlotToAccessList(contract.Address(), slot)
|
evm.StateDB.AddSlotToAccessList(contract.Address(), slot)
|
||||||
if !addrPresent {
|
|
||||||
// Once we're done with YOLOv2 and schedule this for mainnet, might
|
|
||||||
// be good to remove this panic here, which is just really a
|
|
||||||
// canary to have during testing
|
|
||||||
panic("impossible case: address was not present in access list during sstore op")
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
value := common.Hash(y.Bytes32())
|
value := common.Hash(y.Bytes32())
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue