Skip to content

Commit

Permalink
Fix multiplied relation rendering
Browse files Browse the repository at this point in the history
  • Loading branch information
Krzysztof Reczek committed Dec 3, 2020
1 parent a753b9b commit 4711f68
Showing 1 changed file with 10 additions and 2 deletions.
12 changes: 10 additions & 2 deletions pkg/view/render.go
Original file line number Diff line number Diff line change
Expand Up @@ -50,8 +50,10 @@ func (v view) render(s model.Structure) string {
componentsRendered[c.ID] = struct{}{}
}

relationsRendered := map[string]struct{}{}

for true {
numRendered := len(componentsRendered)
numRendered := len(relationsRendered)

for src, to := range s.Relations {
for trg := range to {
Expand Down Expand Up @@ -79,11 +81,17 @@ func (v view) render(s model.Structure) string {
componentsRendered[c.ID] = struct{}{}
}

relationID := src + trg
if _, rendered := relationsRendered[relationID]; rendered {
continue
}

sb.WriteString(buildComponentConnection(src, trg, v.lineColor))
relationsRendered[relationID] = struct{}{}
}
}

if numRendered == len(componentsRendered) {
if numRendered == len(relationsRendered) {
break
}
}
Expand Down

0 comments on commit 4711f68

Please sign in to comment.