diff --git a/lib/trie/trie.go b/lib/trie/trie.go index 8f594e4180..bd26ceddfd 100644 --- a/lib/trie/trie.go +++ b/lib/trie/trie.go @@ -877,10 +877,11 @@ func (t *Trie) clearPrefix(parent *Node, prefix []byte) ( return parent, nodesRemoved } - nodesRemoved = 1 + nodesRemoved = 1 + child.Descendants copySettings := node.DefaultCopySettings branch = t.prepBranchForMutation(branch, copySettings) branch.Children[childIndex] = nil + branch.Descendants -= nodesRemoved var branchChildMerged bool newParent, branchChildMerged = handleDeletion(branch, prefix) if branchChildMerged {