aboutsummaryrefslogtreecommitdiffstats
path: root/core/state/journal.go
diff options
context:
space:
mode:
Diffstat (limited to 'core/state/journal.go')
-rw-r--r--core/state/journal.go9
1 files changed, 7 insertions, 2 deletions
diff --git a/core/state/journal.go b/core/state/journal.go
index 73218dd28..b5c8ca9a2 100644
--- a/core/state/journal.go
+++ b/core/state/journal.go
@@ -71,8 +71,8 @@ type (
hash common.Hash
}
touchChange struct {
- account *common.Address
- prev bool
+ account *common.Address
+ prev bool
prevDirty bool
}
)
@@ -91,6 +91,11 @@ func (ch suicideChange) undo(s *StateDB) {
if obj != nil {
obj.suicided = ch.prev
obj.setBalance(ch.prevbalance)
+ // if the object wasn't suicided before, remove
+ // it from the list of destructed objects as well.
+ if !obj.suicided {
+ delete(s.stateObjectsDestructed, *ch.account)
+ }
}
}