From: ellson Date: Tue, 18 Oct 2005 21:14:17 +0000 (+0000) Subject: Fix bug 804. "Accidental" flat multiedges between clusters were being lost X-Git-Tag: LAST_LIBGRAPH~32^2~7027 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=27ea0c83641fbd822aa8bc7c1a0d3e1a67c6b657;p=graphviz Fix bug 804. "Accidental" flat multiedges between clusters were being lost --- diff --git a/lib/dotgen/cluster.c b/lib/dotgen/cluster.c index 077318d25..6874a85ac 100644 --- a/lib/dotgen/cluster.c +++ b/lib/dotgen/cluster.c @@ -195,11 +195,14 @@ void interclexp(graph_t * subg) /* flat edges */ if (ND_rank(e->tail) == ND_rank(e->head)) { - if (find_flat_edge(e->tail, e->head) == NULL) { + edge_t* fe; + if ((fe = find_flat_edge(e->tail, e->head)) == NULL) { flat_edge(g, e); prev = e; - } else - prev = NULL; + } else if (e != fe) { + safe_other_edge(e); + if (!ED_to_virt(e)) merge_oneway(e, fe); + } continue; }