From: Barijaona Ramaholimihaso Date: Sun, 18 Dec 2005 02:29:51 +0000 (+0000) Subject: Bug 1356997 Patch 1356030 Changed how plugins' filter subroutines are handled, so that in static rendering mode, they receive the correct file list. --- diff --git a/blosxom.cgi b/blosxom.cgi index 5bba603..43afa7d 100755 --- a/blosxom.cgi +++ b/blosxom.cgi @@ -221,10 +221,7 @@ $entries = my $tmp; foreach my $plugin ( @plugins ) { $plugins{$plugin} > 0 and $plugin->can('entries') and defined($tmp = $plugin->entries()) and $entries = $tmp and last; } my ($files, $indexes, $others) = &$entries(); -%files = %$files; %indexes = %$indexes; %others = ref $others ? %$others : (); - -# Plugins: Filter -foreach my $plugin ( @plugins ) { $plugins{$plugin} > 0 and $plugin->can('filter') and $entries = $plugin->filter(\%files, \%others) } +%indexes = %$indexes; # Static if (!$ENV{GATEWAY_INTERFACE} and param('-password') and $static_password and param('-password') eq $static_password) { @@ -281,6 +278,11 @@ foreach my $plugin ( @plugins ) { $plugins{$plugin} > 0 and $plugin->can('end') sub generate { my($static_or_dynamic, $currentdir, $date, $flavour, $content_type) = @_; + %files = %$files; %others = ref $others ? %$others : (); + + # Plugins: Filter + foreach my $plugin ( @plugins ) { $plugins{$plugin} > 0 and $plugin->can('filter') and $entries = $plugin->filter(\%files, \%others) } + my %f = %files; # Plugins: Skip