graphviz crashes with segmentation fault

Bug #229516 reported by Swoop11
4
Affects Status Importance Assigned to Milestone
graphviz (Ubuntu)
Fix Released
Medium
Martin Olsson

Bug Description

Binary package hint: graphviz

Graphivz (dot) crashes with a segmentation fault for the input file below. The problems disappears when I remove some edges and/or nodes from the graph definition file.

A backtrace of the crash is included.
I run (K)ubuntu 8.04 and (lib)graqhviz 2.16-3ubuntu2 and invoked dot with "dot -Tgif -o 68.gif 68.dot".

Input file:
-----------
digraph g {
 bgcolor="white"

node [shape=plaintext]
page134217730 [ label=<<TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0"><TR><TD PORT="previousPage">*</TD> <TD PORT="page" COLSPAN="3">134217730</TD><TD PORT="nextPage">*</TD></TR><TR><TD PORT="child0" BGCOLOR="white">*</TD><TD BGCOLOR="white">130</TD><TD PORT="child1" BGCOLOR="white">*</TD><TD BGCOLOR="white">247</TD><TD PORT="child2" BGCOLOR="white">*</TD></TR></TABLE>>];
page134217739 [ label=<<TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0"><TR><TD PORT="previousPage">*</TD> <TD PORT="page" COLSPAN="3">134217739</TD><TD PORT="nextPage">*</TD></TR><TR><TD PORT="child0" BGCOLOR="white">*</TD><TD BGCOLOR="white">110</TD><TD PORT="child1" BGCOLOR="white">*</TD><TD BGCOLOR="white">120</TD><TD PORT="child2" BGCOLOR="white">*</TD></TR></TABLE>>];
page134217732 [ label=<<TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0"><TR><TD PORT="previousPage">*</TD> <TD PORT="page" COLSPAN="1">134217732</TD><TD PORT="nextPage">*</TD></TR><TR><TD BGCOLOR="white">102</TD><TD BGCOLOR="white">104</TD><TD BGCOLOR="white">106</TD></TR><TR><TD BGCOLOR="white">108</TD><TD COLSPAN="2"></TD></TR></TABLE>>];
page134217735 [ label=<<TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0"><TR><TD PORT="previousPage">*</TD> <TD PORT="page" COLSPAN="1">134217735</TD><TD PORT="nextPage">*</TD></TR><TR><TD BGCOLOR="white">110</TD><TD BGCOLOR="white">112</TD><TD BGCOLOR="white">116</TD></TR><TR><TD BGCOLOR="white">118</TD><TD COLSPAN="2"></TD></TR></TABLE>>];
page134217737 [ label=<<TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0"><TR><TD PORT="previousPage">*</TD> <TD PORT="page" COLSPAN="1">134217737</TD><TD PORT="nextPage">*</TD></TR><TR><TD BGCOLOR="white">120</TD><TD BGCOLOR="white">122</TD><TD BGCOLOR="white">124</TD></TR><TR><TD BGCOLOR="white">126</TD><TD COLSPAN="2"></TD></TR></TABLE>>];
page134217741 [ label=<<TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0"><TR><TD PORT="previousPage">*</TD> <TD PORT="page" COLSPAN="1">134217741</TD><TD PORT="nextPage">*</TD></TR><TR><TD BGCOLOR="white">130</TD><TD BGCOLOR="white">132</TD><TD BGCOLOR="white">134</TD></TR><TR><TD BGCOLOR="white">136</TD><TD COLSPAN="2"></TD></TR></TABLE>>];
page134217743 [ label=<<TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0"><TR><TD PORT="previousPage">*</TD> <TD PORT="page" COLSPAN="1">134217743</TD><TD PORT="nextPage">*</TD></TR><TR><TD BGCOLOR="white">138</TD><TD BGCOLOR="white">140</TD><TD BGCOLOR="white">144</TD></TR><TR><TD BGCOLOR="white">146</TD><TD COLSPAN="2"></TD></TR></TABLE>>];
page134217746 [ label=<<TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0"><TR><TD PORT="previousPage">*</TD> <TD PORT="page" COLSPAN="1">134217746</TD><TD PORT="nextPage">*</TD></TR><TR><TD BGCOLOR="white">148</TD><TD BGCOLOR="white">150</TD><TD BGCOLOR="white">152</TD></TR><TR><TD BGCOLOR="white">154</TD><TD BGCOLOR="white">158</TD><TD BGCOLOR="white">160</TD></TR><TR><TD BGCOLOR="white">162</TD><TD BGCOLOR="white">164</TD><TD COLSPAN="1"></TD></TR></TABLE>>];
page134217731 [ label=<<TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0"><TR><TD PORT="previousPage">*</TD> <TD PORT="page" COLSPAN="1">134217731</TD><TD PORT="nextPage">*</TD></TR><TR><TD BGCOLOR="white">166</TD><TD BGCOLOR="white">166</TD><TD BGCOLOR="white">166</TD></TR><TR><TD BGCOLOR="white">166</TD><TD BGCOLOR="white">166</TD><TD COLSPAN="1"></TD></TR></TABLE>>];
page134217740 [ label=<<TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0"><TR><TD PORT="previousPage">*</TD> <TD PORT="page" COLSPAN="1">134217740</TD><TD PORT="nextPage">*</TD></TR><TR><TD BGCOLOR="white">166</TD><TD BGCOLOR="white">166</TD><TD BGCOLOR="white">166</TD></TR><TR><TD BGCOLOR="white">166</TD><TD COLSPAN="2"></TD></TR></TABLE>>];
page134217747 [ label=<<TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0"><TR><TD PORT="previousPage">*</TD> <TD PORT="page" COLSPAN="1">134217747</TD><TD PORT="nextPage">*</TD></TR><TR><TD BGCOLOR="white">166</TD><TD BGCOLOR="white">166</TD><TD BGCOLOR="white">168</TD></TR><TR><TD BGCOLOR="white">213</TD><TD BGCOLOR="white">215</TD><TD BGCOLOR="white">219</TD></TR><TR><TD BGCOLOR="white">221</TD><TD COLSPAN="2"></TD></TR></TABLE>>];
page134217745 [ label=<<TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0"><TR><TD PORT="previousPage">*</TD> <TD PORT="page" COLSPAN="1">134217745</TD><TD PORT="nextPage">*</TD></TR><TR><TD BGCOLOR="white">223</TD><TD BGCOLOR="white">225</TD><TD BGCOLOR="white">227</TD></TR><TR><TD BGCOLOR="white">229</TD><TD BGCOLOR="white">233</TD><TD COLSPAN="1"></TD></TR></TABLE>>];
page134217742 [ label=<<TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0"><TR><TD PORT="previousPage">*</TD> <TD PORT="page" COLSPAN="1">134217742</TD><TD PORT="nextPage">*</TD></TR><TR><TD BGCOLOR="white">235</TD><TD BGCOLOR="white">237</TD><TD BGCOLOR="white">239</TD></TR><TR><TD BGCOLOR="white">241</TD><TD BGCOLOR="white">243</TD><TD COLSPAN="1"></TD></TR></TABLE>>];
page134217736 [ label=<<TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0"><TR><TD PORT="previousPage">*</TD> <TD PORT="page" COLSPAN="1">134217736</TD><TD PORT="nextPage">*</TD></TR><TR><TD BGCOLOR="white">247</TD><TD BGCOLOR="white">249</TD><TD BGCOLOR="white">251</TD></TR><TR><TD BGCOLOR="white">253</TD><TD BGCOLOR="white">255</TD><TD COLSPAN="1"></TD></TR></TABLE>>];
page134217734 [ label=<<TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0"><TR><TD PORT="previousPage">*</TD> <TD PORT="page" COLSPAN="1">134217734</TD><TD PORT="nextPage">*</TD></TR><TR><TD BGCOLOR="white">257</TD><TD BGCOLOR="white">261</TD><TD BGCOLOR="white">263</TD></TR><TR><TD BGCOLOR="white">265</TD><TD BGCOLOR="white">267</TD><TD COLSPAN="1"></TD></TR></TABLE>>];
page134217733 [ label=<<TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0"><TR><TD PORT="previousPage">*</TD> <TD PORT="page" COLSPAN="1">134217733</TD><TD PORT="nextPage">*</TD></TR><TR><TD BGCOLOR="white">269</TD><TD BGCOLOR="white">271</TD><TD BGCOLOR="white">275</TD></TR><TR><TD BGCOLOR="white">277</TD><TD BGCOLOR="white">279</TD><TD COLSPAN="1"></TD></TR></TABLE>>];
page134217744 [ label=<<TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0"><TR><TD PORT="previousPage">*</TD> <TD PORT="page" COLSPAN="9">134217744</TD><TD PORT="nextPage">*</TD></TR><TR><TD PORT="child0" BGCOLOR="white">*</TD><TD BGCOLOR="white">138</TD><TD PORT="child1" BGCOLOR="white">*</TD><TD BGCOLOR="white">148</TD><TD PORT="child2" BGCOLOR="white">*</TD><TD BGCOLOR="white">166</TD><TD PORT="child3" BGCOLOR="white">*</TD><TD BGCOLOR="white">223</TD><TD PORT="child4" BGCOLOR="white">*</TD><TD BGCOLOR="white">235</TD><TD PORT="child5" BGCOLOR="white">*</TD></TR></TABLE>>];
page134217738 [ label=<<TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0"><TR><TD PORT="previousPage">*</TD> <TD PORT="page" COLSPAN="3">134217738</TD><TD PORT="nextPage">*</TD></TR><TR><TD PORT="child0" BGCOLOR="white">*</TD><TD BGCOLOR="white">257</TD><TD PORT="child1" BGCOLOR="white">*</TD><TD BGCOLOR="white">269</TD><TD PORT="child2" BGCOLOR="white">*</TD></TR></TABLE>>];

page134217730:child0 -> page134217739:page;
page134217730:child1 -> page134217744:page;
page134217730:child2 -> page134217738:page;
page134217739:child0 -> page134217732:page;
page134217739:child1 -> page134217735:page;
page134217739:child2 -> page134217737:page;
page134217732:nextPage -> page134217735:previousPage [constraint=false];
page134217735:previousPage -> page134217732:nextPage [constraint=false];
page134217735:nextPage -> page134217737:previousPage [constraint=false];
page134217737:previousPage -> page134217735:nextPage [constraint=false];
page134217737:nextPage -> page134217741:previousPage [constraint=false];
page134217741:previousPage -> page134217737:nextPage [constraint=false];
page134217741:nextPage -> page134217743:previousPage [constraint=false];
page134217743:previousPage -> page134217741:nextPage [constraint=false];
page134217743:nextPage -> page134217746:previousPage [constraint=false];
page134217746:previousPage -> page134217743:nextPage [constraint=false];
page134217746:nextPage -> page134217731:previousPage [constraint=false];
page134217731:previousPage -> page134217746:nextPage [constraint=false];
page134217731:nextPage -> page134217740:previousPage [constraint=false];
page134217740:previousPage -> page134217731:nextPage [constraint=false];
page134217740:nextPage -> page134217747:previousPage [constraint=false];
page134217747:previousPage -> page134217740:nextPage [constraint=false];
page134217747:nextPage -> page134217745:previousPage [constraint=false];
page134217745:previousPage -> page134217747:nextPage [constraint=false];
page134217745:nextPage -> page134217742:previousPage [constraint=false];
page134217742:previousPage -> page134217745:nextPage [constraint=false];
page134217742:nextPage -> page134217736:previousPage [constraint=false];
page134217736:previousPage -> page134217742:nextPage [constraint=false];
page134217736:nextPage -> page134217734:previousPage [constraint=false];
page134217734:previousPage -> page134217736:nextPage [constraint=false];
page134217734:nextPage -> page134217733:previousPage [constraint=false];
page134217733:previousPage -> page134217734:nextPage [constraint=false];
page134217744:child0 -> page134217741:page;
page134217744:child1 -> page134217743:page;
page134217744:child2 -> page134217746:page;
page134217744:child3 -> page134217747:page;
page134217744:child4 -> page134217745:page;
page134217744:child5 -> page134217742:page;
page134217738:child0 -> page134217736:page;
page134217738:child1 -> page134217734:page;
page134217738:child2 -> page134217733:page;
-----------

Tags: likely-dup
Revision history for this message
Swoop11 (sebastian-baechle) wrote :
Revision history for this message
Daniel T Chen (crimsun) wrote :

Is this symptom still reproducible in 8.10 or 9.04? Please also attach your test case separately. Your pasted source seems to have a syntax error.

Changed in graphviz:
assignee: nobody → crimsun
status: New → Incomplete
importance: Undecided → Medium
Revision history for this message
Martin Olsson (mnemo) wrote :

I tried it on karmic-as-of-23rd-aug now and it works (the syntax error is just a missing "}" in the end). After I fixed the syntax error I could run the command with no SEGV and the generated .gif shows a nice graph when opened in eog. Either bug has been fixed or maybe (very unlikely) it only repros on kubuntu (I have 64-bit with GNOME only).

Swoop11, if you can still re-create this crash on karmic please re-open the bug.

Changed in graphviz (Ubuntu):
assignee: Daniel T Chen (crimsun) → Martin Olsson (mnemo)
status: Incomplete → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.