From 1009607c4910598ab304739327bd05dfcbdce843 Mon Sep 17 00:00:00 2001 From: Alexey Shekhirin <5773434+shekhirin@users.noreply.github.com> Date: Fri, 20 Dec 2024 10:21:49 +0200 Subject: [PATCH] fix(tree): destroyed accounts should not have storage in state root task (#13460) Co-authored-by: Federico Gimenez --- crates/engine/tree/src/tree/root.rs | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/crates/engine/tree/src/tree/root.rs b/crates/engine/tree/src/tree/root.rs index dd931a8e4..6ebb509da 100644 --- a/crates/engine/tree/src/tree/root.rs +++ b/crates/engine/tree/src/tree/root.rs @@ -243,11 +243,12 @@ fn evm_state_to_hashed_post_state(update: EvmState) -> HashedPostState { }) .peekable(); - if destroyed || changed_storage_iter.peek().is_some() { - hashed_state.storages.insert( - hashed_address, - HashedStorage::from_iter(destroyed, changed_storage_iter), - ); + if destroyed { + hashed_state.storages.insert(hashed_address, HashedStorage::new(true)); + } else if changed_storage_iter.peek().is_some() { + hashed_state + .storages + .insert(hashed_address, HashedStorage::from_iter(false, changed_storage_iter)); } } }