X-Git-Url: https://git.deb.at/?p=pkg%2Fblosxom.git;a=blobdiff_plain;f=blosxom.cgi;h=4005c8c8898759d9f8937ac964507ed9d9d50ed9;hp=997fcc74a4a00fdc80eb0cd82265e8c64f850643;hb=edb54ed7d5e10af1809cc06ef469e9af82e0c52f;hpb=0f7240c4441b085dd9f46a326abe19e6b5a77ed5 diff --git a/blosxom.cgi b/blosxom.cgi index 997fcc7..4005c8c 100755 --- a/blosxom.cgi +++ b/blosxom.cgi @@ -2,7 +2,7 @@ # Blosxom # Author: Rael Dornfest -# Version: 2.0.1 +# Version: 2.0.2 # Home/Docs/Licensing: http://www.blosxom.com/ # Development/Downloads: http://sourceforge.net/projects/blosxom @@ -76,7 +76,7 @@ use File::stat; use Time::localtime; use CGI qw/:standard :netscape/; -$version = "2.0"; +$version = "2.0.2"; my $fh = new FileHandle; @@ -143,13 +143,20 @@ $template = return join '', <$fh> if $fh->open("< $datadir/$path/$chunk.$flavour"); } while ($path =~ s/(\/*[^\/]*)$// and $1); - return join '', ($template{$flavour}{$chunk} || $template{error}{$chunk} || ''); + # Check for definedness, since flavour can be the empty string + if (defined $template{$flavour}{$chunk}) { + return $template{$flavour}{$chunk}; + } elsif (defined $template{error}{$chunk}) { + return $template{error}{$chunk} + } else { + return ''; + } }; # Bring in the templates %template = (); while () { last if /^(__END__)$/; - my($ct, $comp, $txt) = /^(\S+)\s(\S+)\s(.*)$/ or next; + my($ct, $comp, $txt) = /^(\S+)\s(\S+)(?:\s(.*))?$/ or next; $txt =~ s/\\n/\n/mg; $template{$ct}{$comp} .= $txt . "\n"; }