|
|
@@ -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)
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
|