From 6f727a66f92f95e8e579d89ae0f490c4ac40ac61 Mon Sep 17 00:00:00 2001 From: Jared Wasinger Date: Fri, 3 Oct 2025 16:31:10 +0800 Subject: [PATCH] checkpoint commit --- core/types/bal/bal.go | 38 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) diff --git a/core/types/bal/bal.go b/core/types/bal/bal.go index 41ed69b6df..d3cab7057f 100644 --- a/core/types/bal/bal.go +++ b/core/types/bal/bal.go @@ -174,6 +174,44 @@ func (c *ConstructionBlockAccessList) Apply(idx uint16, diff *StateDiff, accesse acctChanges = &ConstructionAccountAccesses{} c.Accounts[addr] = acctChanges } + + if stateDiff.Nonce != nil { + if acctChanges.NonceChanges == nil { + acctChanges.NonceChanges = make(map[uint16]uint64) + } + acctChanges.NonceChanges[idx] = *stateDiff.Nonce + } + if stateDiff.Balance != nil { + if acctChanges.BalanceChanges == nil { + acctChanges.BalanceChanges = make(map[uint16]*uint256.Int) + } + acctChanges.BalanceChanges[idx] = stateDiff.Balance + } + if stateDiff.Code != nil { + if acctChanges.CodeChanges == nil { + acctChanges.CodeChanges = make(map[uint16]CodeChange) + } + acctChanges.CodeChanges[idx] = CodeChange{idx, stateDiff.Code} + } + if stateDiff.StorageWrites != nil { + if acctChanges.StorageWrites == nil { + acctChanges.StorageWrites = make(map[common.Hash]map[uint16]common.Hash) + } + for key, val := range stateDiff.StorageWrites { + acctChanges.StorageWrites[key][idx] = val + } + } + } + for addr, stateAccesses := range accesses { + acctAccess, ok := c.Accounts[addr] + if !ok { + acctAccess = &ConstructionAccountAccesses{} + c.Accounts[addr] = acctAccess + } + + for key := range stateAccesses { + acctAccess.StorageReads[key] = struct{}{} + } } }