From: <de...@de...> - 2008-03-28 18:55:53
|
Author: StephaneLenclud Date: 2008-03-28 13:55:58 -0500 (Fri, 28 Mar 2008) New Revision: 16580 Trac url: http://develop.twiki.org/trac/changeset/16580 Modified: twiki/trunk/TreePlugin/lib/TWiki/Plugins/TreePlugin/ImgNodeFormatter.pm Log: Item2942: TreePlugin fixing endless recursion for imageoutline:thread formatting. Modified: twiki/trunk/TreePlugin/lib/TWiki/Plugins/TreePlugin/ImgNodeFormatter.pm =================================================================== --- twiki/trunk/TreePlugin/lib/TWiki/Plugins/TreePlugin/ImgNodeFormatter.pm 2008-03-28 14:09:03 UTC (rev 16579) +++ twiki/trunk/TreePlugin/lib/TWiki/Plugins/TreePlugin/ImgNodeFormatter.pm 2008-03-28 18:55:58 UTC (rev 16580) @@ -245,7 +245,7 @@ sub getLasts { my ( $node, $level ) = @_; my $lastString = ""; - $lastString = isNodeLast($node) unless ( $level == 0 ); # don't do root + $lastString = isNodeLast($node,$level) unless ( $level == 0 ); # don't do root return substr( $lastString, -$level ) ; # just get the data pertainent to this tree view @@ -261,7 +261,12 @@ # class method sub isNodeLast { - my ($node) = @_; + my ($node,$level) = @_; + #SL: make sure we don't recurse on the root level + if ($level==0) + { + return 0; + } my $parent = $node->parent; return 0 unless ( ref($parent) ); @@ -271,7 +276,7 @@ return $t if ( $parent->name eq " " ); # HACK to stop recursion up the tree!! # though it should stop anyway - return isNodeLast($parent) . $t; # recurse up the hierarchy tree + return isNodeLast($parent,--$level) . $t; # recurse up the hierarchy tree } 1; |