[interchange-cvs] interchange - jon modified 2 files

interchange-core@interchange.redhat.com interchange-core@interchange.redhat.com
Mon Mar 11 12:28:04 2002


User:      jon
Date:      2002-03-11 17:25:46 GMT
Modified:  lib/Vend Parse.pm Interpolate.pm
Log:
Allow output of '0' from [if]...[else]0[/else][/if].
Thanks to Murahashi <murahashi@ayayu.com> for finding this bug.

Should go into stable branch if nobody has concerns with the patch.

Revision  Changes    Path
2.16      +3 -3      interchange/lib/Vend/Parse.pm


rev 2.16, prev_rev 2.15
Index: Parse.pm
===================================================================
RCS file: /var/cvs/interchange/lib/Vend/Parse.pm,v
retrieving revision 2.15
retrieving revision 2.16
diff -u -u -r2.15 -r2.16
--- Parse.pm	4 Mar 2002 23:45:17 -0000	2.15
+++ Parse.pm	11 Mar 2002 17:25:46 -0000	2.16
@@ -1,6 +1,6 @@
 # Vend::Parse - Parse Interchange tags
 # 
-# $Id: Parse.pm,v 2.15 2002/03/04 23:45:17 jon Exp $
+# $Id: Parse.pm,v 2.16 2002/03/11 17:25:46 jon Exp $
 #
 # Copyright (C) 1996-2001 Red Hat, Inc. <interchange@redhat.com>
 #
@@ -35,7 +35,7 @@
 
 @ISA = qw(Exporter Vend::Parser);
 
-$VERSION = substr(q$Revision: 2.15 $, 10);
+$VERSION = substr(q$Revision: 2.16 $, 10);
 
 @EXPORT = ();
 @EXPORT_OK = qw(find_matching_end);
@@ -674,7 +674,7 @@
 			$tmpbuf = $p->{ABORT} ? '' : $p->{OUT};
 		}
 		if($attr->{reparse} ) {
-			$$buf = ($routine->(@args,$tmpbuf) || '') . $$buf;
+			$$buf = ($routine->(@args,$tmpbuf)) . $$buf;
 		}
 		else {
 			$self->{OUT} .= &{$routine}(@args,$tmpbuf);



2.62      +6 -6      interchange/lib/Vend/Interpolate.pm


rev 2.62, prev_rev 2.61
Index: Interpolate.pm
===================================================================
RCS file: /var/cvs/interchange/lib/Vend/Interpolate.pm,v
retrieving revision 2.61
retrieving revision 2.62
diff -u -u -r2.61 -r2.62
--- Interpolate.pm	28 Feb 2002 17:32:15 -0000	2.61
+++ Interpolate.pm	11 Mar 2002 17:25:46 -0000	2.62
@@ -1,6 +1,6 @@
 # Vend::Interpolate - Interpret Interchange tags
 # 
-# $Id: Interpolate.pm,v 2.61 2002/02/28 17:32:15 jon Exp $
+# $Id: Interpolate.pm,v 2.62 2002/03/11 17:25:46 jon Exp $
 #
 # Copyright (C) 1996-2001 Red Hat, Inc. <interchange@redhat.com>
 #
@@ -27,7 +27,7 @@
 require Exporter;
 @ISA = qw(Exporter);
 
-$VERSION = substr(q$Revision: 2.61 $, 10);
+$VERSION = substr(q$Revision: 2.62 $, 10);
 
 @EXPORT = qw (
 
@@ -1470,11 +1470,11 @@
 		$out = $body;
 	}
 	elsif ($elsif) {
-		$else = '[else]' . $else . '[/else]' if $else;
+		$else = '[else]' . $else . '[/else]' if length $else;
 		$elsif =~ s#(.*?)$QR{'/elsif'}(.*)#$1${2}[/elsif]#s;
 		$out = '[if ' . $elsif . $else . '[/if]';
 	}
-	elsif ($else) {
+	elsif (length $else) {
 		$out = $else;
 	}
 	return $out;
@@ -3103,11 +3103,11 @@
 		$out = $body;
 	}
 	elsif ($elsif) {
-		$else = '[else]' . $else . '[/else]' if $else;
+		$else = '[else]' . $else . '[/else]' if length $else;
 		$elsif =~ s#(.*?)$QR{'/elsif'}(.*)#$1${2}[/elsif]#s;
 		$out = '[if ' . $elsif . $else . '[/if]';
 	}
-	elsif ($else) {
+	elsif (length $else) {
 		$out = $else;
 	}
 	else {