aboutsummaryrefslogtreecommitdiff
path: root/core/state/journal.go
diff options
context:
space:
mode:
authorDeterminant <tederminant@gmail.com>2020-09-16 00:39:05 -0400
committerDeterminant <tederminant@gmail.com>2020-09-16 00:39:05 -0400
commitfec21d6c958264ff5ff729c0c91e4a882aecc23b (patch)
treece806865e047ffc98e93ee707b9419d0c64e7297 /core/state/journal.go
parent78745551c077bf54151202138c2629f288769561 (diff)
add lists to keep track of actually hacked files
Diffstat (limited to 'core/state/journal.go')
-rw-r--r--core/state/journal.go10
1 files changed, 6 insertions, 4 deletions
diff --git a/core/state/journal.go b/core/state/journal.go
index 6e85173..cfa1a4a 100644
--- a/core/state/journal.go
+++ b/core/state/journal.go
@@ -90,7 +90,8 @@ type (
account *common.Address
}
resetObjectChange struct {
- prev *stateObject
+ prev *stateObject
+ prevdestruct bool
}
suicideChange struct {
account *common.Address
@@ -130,9 +131,7 @@ type (
hash common.Hash
}
touchChange struct {
- account *common.Address
- prev bool
- prevDirty bool
+ account *common.Address
}
)
@@ -147,6 +146,9 @@ func (ch createObjectChange) dirtied() *common.Address {
func (ch resetObjectChange) revert(s *StateDB) {
s.setStateObject(ch.prev)
+ if !ch.prevdestruct && s.snap != nil {
+ delete(s.snapDestructs, ch.prev.addrHash)
+ }
}
func (ch resetObjectChange) dirtied() *common.Address {