diff --git a/tree.go b/tree.go index e7809fc0..f54ca67c 100644 --- a/tree.go +++ b/tree.go @@ -834,7 +834,10 @@ func (n *InternalNode) GetProofItems(keys keylist) (*ProofElements, []byte, [][] // repeated as many times? It would be wasteful, so the // decoding code has to be aware of this corner case. esses = append(esses, extStatusAbsentEmpty|((n.depth+1)<<3)) - pe.Vals = append(pe.Vals, nil) + for i := 0; i < len(group); i++ { + // Append one nil value per key in this missing stem + pe.Vals = append(pe.Vals, nil) + } continue }