diff --git a/core/state/state_object.go b/core/state/state_object.go index 3239be368c..85cb8b44de 100644 --- a/core/state/state_object.go +++ b/core/state/state_object.go @@ -304,10 +304,9 @@ func (s *stateObject) finalise() { // loading or updating of the trie, an error will be returned. Furthermore, // this function will return the mutated storage trie, or nil if there is no // storage change at all. +// +// It assumes all the dirty storage slots have been finalized before. func (s *stateObject) updateTrie() (Trie, error) { - // Make sure all dirty slots are finalized into the pending storage area - s.finalise() - // Short circuit if nothing changed, don't bother with hashing anything if len(s.pendingStorage) == 0 { return s.trie, nil