Skip to content

Commit

Permalink
fix(inspector): always call selfdestruct if entry is made (#1746)
Browse files Browse the repository at this point in the history
Signed-off-by: jsvisa <[email protected]>
  • Loading branch information
jsvisa authored Sep 4, 2024
1 parent fa5650e commit 32f357f
Showing 1 changed file with 19 additions and 10 deletions.
29 changes: 19 additions & 10 deletions crates/revm/src/inspector/handler_register.rs
Original file line number Diff line number Diff line change
Expand Up @@ -67,16 +67,25 @@ pub fn inspector_handle_register<DB: Database, EXT: GetInspector<DB>>(
// execute selfdestruct
prev(interpreter, host);
// check if selfdestruct was successful and if journal entry is made.
if let Some(JournalEntry::AccountDestroyed {
address,
target,
had_balance,
..
}) = host.evm.journaled_state.journal.last().unwrap().last()
{
host.external
.get_inspector()
.selfdestruct(*address, *target, *had_balance);
match host.evm.journaled_state.journal.last().unwrap().last() {
Some(JournalEntry::AccountDestroyed {
address,
target,
had_balance,
..
}) => {
host.external
.get_inspector()
.selfdestruct(*address, *target, *had_balance);
}
Some(JournalEntry::BalanceTransfer {
from, to, balance, ..
}) => {
host.external
.get_inspector()
.selfdestruct(*from, *to, *balance);
}
_ => {}
}
});

Expand Down

0 comments on commit 32f357f

Please sign in to comment.