]> granicus.if.org Git - graphviz/commitdiff
Fix for bug#1747 - there should be no head arrow with dir=back arrowhead=normal
authorellson <devnull@localhost>
Mon, 5 Oct 2009 13:06:08 +0000 (13:06 +0000)
committerellson <devnull@localhost>
Mon, 5 Oct 2009 13:06:08 +0000 (13:06 +0000)
lib/common/arrows.c

index 3686355aa39af642b0501553b2a383d8b292da93..110920d00d63897950f56c284a93e9e7d9f2ae88 100644 (file)
@@ -199,14 +199,14 @@ void arrow_flags(Agedge_t * e, int *sflag, int *eflag)
        }
     }
 #ifdef WITH_CGRAPH
-    if (E_arrowhead && ((attr = agxget(e, E_arrowhead)))[0])
+    if (E_arrowhead && (*eflag == ARR_TYPE_NORM) && ((attr = agxget(e, E_arrowhead)))[0])
        arrow_match_name(attr, eflag);
-    if (E_arrowtail && ((attr = agxget(e, E_arrowtail)))[0])
+    if (E_arrowtail && (*sflag == ARR_TYPE_NORM) && ((attr = agxget(e, E_arrowtail)))[0])
        arrow_match_name(attr, sflag);
 #else
-    if (E_arrowhead && ((attr = agxget(e, E_arrowhead->index)))[0])
+    if (E_arrowhead && (*eflag == ARR_TYPE_NORM) && ((attr = agxget(e, E_arrowhead->index)))[0])
        arrow_match_name(attr, eflag);
-    if (E_arrowtail && ((attr = agxget(e, E_arrowtail->index)))[0])
+    if (E_arrowtail && (*sflag == ARR_TYPE_NORM) && ((attr = agxget(e, E_arrowtail->index)))[0])
        arrow_match_name(attr, sflag);
 #endif
     if (ED_conc_opp_flag(e)) {