mirror of
https://github.com/ethereum/go-ethereum.git
synced 2026-08-20 10:52:25 +00:00
core/state: fix flaw
This commit is contained in:
parent
6e30438b55
commit
5619b68221
1 changed files with 4 additions and 1 deletions
|
|
@ -544,10 +544,13 @@ func (s *StateDB) getDeletedStateObject(addr common.Address) *stateObject {
|
||||||
defer func(start time.Time) { s.AccountReads += time.Since(start) }(time.Now())
|
defer func(start time.Time) { s.AccountReads += time.Since(start) }(time.Now())
|
||||||
}
|
}
|
||||||
enc, err := s.trie.TryGet(addr[:])
|
enc, err := s.trie.TryGet(addr[:])
|
||||||
if len(enc) == 0 {
|
if err != nil {
|
||||||
s.setError(fmt.Errorf("getDeleteStateObject (%x) error: %v", addr[:], err))
|
s.setError(fmt.Errorf("getDeleteStateObject (%x) error: %v", addr[:], err))
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
if len(enc) == 0{
|
||||||
|
return nil
|
||||||
|
}
|
||||||
if err := rlp.DecodeBytes(enc, &data); err != nil {
|
if err := rlp.DecodeBytes(enc, &data); err != nil {
|
||||||
log.Error("Failed to decode state object", "addr", addr, "err", err)
|
log.Error("Failed to decode state object", "addr", addr, "err", err)
|
||||||
return nil
|
return nil
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue