Skip Menu |

This queue is for tickets about the GraphViz CPAN distribution.

Report information
The Basics
Id: 30923
Status: resolved
Priority: 0/
Queue: GraphViz

People
Owner: Nobody in particular
Requestors: NKH [...] cpan.org
Cc:
AdminCc:

Bug Information
Severity: Critical
Broken in: (no value)
Fixed in: (no value)



Subject: GraphViz::Data::Grapher doesn't support circular references
my $s = [] ; $s->[0] = $s ; my $graph = GraphViz::Data::Grapher->new($s); print $graph->as_png; Show quoted text
>perl -w graphviz_circular_reference_test.pl
Deep recursion on subroutine "GraphViz::Data::Grapher::_init" at /usr/lib64/perl5/site_perl/5.8.8/GraphViz/Data/Grapher.pm line 108.
This issue has not been fixed in GraphViz2 V 1.00. I (Ron) don't see an easy fix, at the moment. But since GraphViz2 stores the nodes in a Tree::DAG_Node object before plotting them, it's possible to make 2 passes over the data structure. The first would collect all the references, and the second could use that information to ensure the recursion does not happen. There're won't be any further development on GraphViz.