File tree Expand file tree Collapse file tree 1 file changed +12
-13
lines changed Expand file tree Collapse file tree 1 file changed +12
-13
lines changed Original file line number Diff line number Diff line change @@ -275,24 +275,23 @@ func (st *StackTrie) hash() []byte {
275275
276276 switch st .nodeType {
277277 case branchNode :
278- fn := & fullNode {}
279- for i , v := range st .children {
280- if v != nil {
281- // Write a 32 byte list to the sponge
282- childhash := v .hash ()
283- if len (childhash ) < 32 {
284- fn .Children [i ] = rawNode (childhash )
285-
286- } else {
287- fn .Children [i ] = hashNode (childhash )
288- }
289- st .children [i ] = nil // Reclaim mem from subtree
278+ var nodes [17 ]node
279+ for i , child := range st .children {
280+ if child == nil {
281+ nodes [i ] = nilValueNode
282+ continue
283+ }
284+ if childhash := child .hash (); len (childhash ) < 32 {
285+ nodes [i ] = rawNode (childhash )
286+ }else {
287+ nodes [i ]= hashNode (childhash )
290288 }
291289 }
290+ nodes [16 ] = nilValueNode
292291 h = newHasher (false )
293292 defer returnHasherToPool (h )
294293 h .tmp .Reset ()
295- if err := rlp .Encode (& h .tmp , fn ); err != nil {
294+ if err := rlp .Encode (& h .tmp , nodes ); err != nil {
296295 panic (err )
297296 }
298297 case extNode :
You can’t perform that action at this time.
0 commit comments