core/state: deep copy slices

This commit is contained in:
Weixie Cui 2026-05-13 01:26:16 +08:00
parent 934a0091fa
commit ecdd8c47cf

View file

@ -735,8 +735,10 @@ func (s *StateDB) Copy() *StateDB {
for hash, logs := range s.logs {
cpy := make([]*types.Log, len(logs))
for i, l := range logs {
cpy[i] = new(types.Log)
*cpy[i] = *l
c := *l
c.Topics = slices.Clone(l.Topics)
c.Data = common.CopyBytes(l.Data)
cpy[i] = &c
}
state.logs[hash] = cpy
}