forked from cerc-io/plugeth
core/state/snapshot: don't create storage list for non-existing accounts
This commit is contained in:
parent
39c64d85a2
commit
90af6dae6e
@ -526,6 +526,11 @@ func (dl *diffLayer) StorageList(accountHash common.Hash) ([]common.Hash, bool)
|
|||||||
// If an old list already exists, return it
|
// If an old list already exists, return it
|
||||||
dl.lock.RLock()
|
dl.lock.RLock()
|
||||||
_, destructed := dl.destructSet[accountHash]
|
_, destructed := dl.destructSet[accountHash]
|
||||||
|
if _, ok := dl.storageData[accountHash]; !ok {
|
||||||
|
// Account not tracked by this layer
|
||||||
|
dl.lock.RUnlock()
|
||||||
|
return nil, destructed
|
||||||
|
}
|
||||||
if list, exist := dl.storageList[accountHash]; exist {
|
if list, exist := dl.storageList[accountHash]; exist {
|
||||||
dl.lock.RUnlock()
|
dl.lock.RUnlock()
|
||||||
return list, destructed // The list might be nil
|
return list, destructed // The list might be nil
|
||||||
|
Loading…
Reference in New Issue
Block a user