3
0

Fix graph cycle resolution

This commit is contained in:
Tomaž Jerman
2020-12-18 11:15:58 +01:00
parent 8fa00d04d7
commit 4e7f150e81
+3 -2
View File
@@ -171,14 +171,15 @@ func (g *graph) traverse(n *node, path, processed nodeMap) *node {
if path.has(n) {
return n
}
cnn := g.removeProcessed(g.removeConflicting(g.childNodes(n)))
// Nothing else to look at
if len(g.childNodes(n)) == 0 {
if len(cnn) == 0 {
return nil
}
path.add(n)
for _, c := range g.childNodes(n) {
for _, c := range cnn {
m := g.traverse(c, path, processed)
if m != nil {
return m