From 25191a24433a4744b02a2e77dbed7a77fe2c840e Mon Sep 17 00:00:00 2001 From: mcrakhman Date: Sat, 3 Dec 2022 15:59:45 +0100 Subject: [PATCH] Fix dfsprev --- common/pkg/acl/tree/tree.go | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/common/pkg/acl/tree/tree.go b/common/pkg/acl/tree/tree.go index 80bbb78c..f1dbbf9b 100644 --- a/common/pkg/acl/tree/tree.go +++ b/common/pkg/acl/tree/tree.go @@ -336,8 +336,9 @@ func (t *Tree) dfsPrev(stack []*Change, breakpoints []string, visit func(ch *Cha t.visitedBuf = append(t.visitedBuf, ch) for _, prevId := range ch.PreviousIds { - prevCh := t.attached[prevId] - if !prevCh.visited { + prevCh, exists := t.attached[prevId] + // here the only time it wouldn't exist if we are at the tree root + if exists && !prevCh.visited { stack = append(stack, prevCh) } }