From 6e813f68baf1ef73cd3ea0eb4ce95fa09764fabf Mon Sep 17 00:00:00 2001 From: Ignacio Hagopian Date: Tue, 18 Mar 2025 17:46:28 -0300 Subject: [PATCH] tracers/prestate: always remove empty accounts from pre-state Signed-off-by: Ignacio Hagopian --- eth/tracers/native/prestate.go | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/eth/tracers/native/prestate.go b/eth/tracers/native/prestate.go index e04b77f61f..f055492c09 100644 --- a/eth/tracers/native/prestate.go +++ b/eth/tracers/native/prestate.go @@ -177,11 +177,9 @@ func (t *prestateTracer) OnTxEnd(receipt *types.Receipt, err error) { if t.config.DiffMode { t.processDiffState() } - // the new created contracts' prestate were empty, so delete them - for a := range t.created { - // the created contract maybe exists in statedb before the creating tx - if s := t.pre[a]; s != nil && s.empty { - delete(t.pre, a) + for addr, s := range t.pre { + if s.empty { + delete(t.pre, addr) } } }