[interchange-cvs] interchange - heins modified code/SystemTag/tree.coretag

interchange-cvs at icdevgroup.org interchange-cvs at icdevgroup.org
Fri Jan 9 03:03:26 EST 2004


User:      heins
Date:      2004-01-09 08:03:25 GMT
Modified:  code/SystemTag tree.coretag
Log:
* Fix bub where trees were being improperly built in use-file mode.

* Slight efficiency improvement by not returning array and testing
  it when $qsub called.

* Bug fix -- merge into stable.

Revision  Changes    Path
1.7       +5 -3      interchange/code/SystemTag/tree.coretag


rev 1.7, prev_rev 1.6
Index: tree.coretag
===================================================================
RCS file: /var/cvs/interchange/code/SystemTag/tree.coretag,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -r1.6 -r1.7
--- tree.coretag	5 May 2003 14:54:29 -0000	1.6
+++ tree.coretag	9 Jan 2004 08:03:25 -0000	1.7
@@ -2,7 +2,7 @@
 UserTag tree                addAttr
 UserTag tree                attrAlias    sub subordinate
 UserTag tree                hasEndTag
-UserTag tree                Version   $Revision: 1.6 $
+UserTag tree                Version   $Revision: 1.7 $
 UserTag tree                Routine <<EOR
 sub {
 	my($table, $parent, $sub, $start_item, $opt, $text) = @_;
@@ -153,9 +153,10 @@
 			my $base = $passed[$key - 1]->{$l} + 1;
 #::logDebug("Base level=$base, firstone = $passed[$key]{$l}");
 			my @out;
-			for(my $i = $key; $passed[$i]{$l} == $base ; $i++ ) {
-				push @out, $passed[$i];
+			for(my $i = $key; $passed[$i]{$l} >= $base ; $i++ ) {
+				push @out, $passed[$i] if $passed[$i]{$l} == $base;
 			}
+			return unless @out;
 			return \@out;
 		};
 	}
@@ -180,6 +181,7 @@
 			while(my $ref = $sth->fetchrow_hashref()) {
 				push @ary, { %$ref };
 			}
+			return unless @ary;
 			return \@ary;
 		};
 	}








More information about the interchange-cvs mailing list