From ef038c612560ef65059517badd2269d51bf38b61 Mon Sep 17 00:00:00 2001 From: andri lim Date: Wed, 22 Apr 2020 11:28:16 +0700 Subject: [PATCH] witness_from_tree minor refactor --- stateless/witness_from_tree.nim | 22 ++++++++-------------- 1 file changed, 8 insertions(+), 14 deletions(-) diff --git a/stateless/witness_from_tree.nim b/stateless/witness_from_tree.nim index 33f05241a..bb65f8607 100644 --- a/stateless/witness_from_tree.nim +++ b/stateless/witness_from_tree.nim @@ -106,20 +106,14 @@ proc getBranchRecurseAux(wb: var WitnessBuilder; db: DB, node: openArray[byte], of 17: let branchMask = rlpListToBitmask(nodeRlp) writeBranchNode(wb, branchMask) - - if path.len != 0: - for i in 0..<16: - if branchMask.branchMaskBitIsSet(i): - var branch = nodeRlp.listElem(i) - if i == path[0].int: - let nextLookup = branch.getNode - getBranchRecurseAux(wb, db, nextLookup, path.slice(1)) - else: - writeHashNode(wb, branch.expectHash) - else: - for i in 0..<16: - if branchMask.branchMaskBitIsSet(i): - var branch = nodeRlp.listElem(i) + let notLeaf = path.len != 0 + for i in 0..<16: + if branchMask.branchMaskBitIsSet(i): + var branch = nodeRlp.listElem(i) + if notLeaf and i == path[0].int: + let nextLookup = branch.getNode + getBranchRecurseAux(wb, db, nextLookup, path.slice(1)) + else: writeHashNode(wb, branch.expectHash) # put 17th elem