Avoid "conditional and" for adding header to $output
[matthijs/upstream/blosxom.git] / blosxom.cgi
index 49dd4c2da57281c2bcb59151a0b61cfae3d88cf2..bba92f18a07e149f5516054e10f088d048b9e713 100755 (executable)
@@ -502,7 +502,11 @@ sub generate {
       my $story = (&$template($path,'story',$flavour));
   
       # Plugins: Story
-      foreach my $plugin ( @plugins ) { $plugins{$plugin} > 0 and $plugin->can('story') and $entries = $plugin->story($path, $fn, \$story, \$title, \$body) }
+      foreach my $plugin (@plugins) {
+          if ( $plugins{$plugin} > 0 and $plugin->can('story') ) {
+              $entries = $plugin->story( $path, $fn, \$story, \$title, \$body );
+          }
+      }
       
       if ($content_type =~ m{\bxml\b}) {
         # Escape <, >, and &, and to produce valid RSS
@@ -524,18 +528,26 @@ sub generate {
     my $foot = (&$template($currentdir,'foot',$flavour));
   
     # Plugins: Foot
-    foreach my $plugin ( @plugins ) { $plugins{$plugin} > 0 and $plugin->can('foot') and $entries = $plugin->foot($currentdir, \$foot) }
+    foreach my $plugin (@plugins) {
+        if ( $plugins{$plugin} > 0 and $plugin->can('foot') ) {
+            $entries = $plugin->foot( $currentdir, \$foot );
+        }
+    }
   
     $foot = &$interpolate($foot);
     $output .= $foot;
 
     # Plugins: Last
-    foreach my $plugin ( @plugins ) { $plugins{$plugin} > 0 and $plugin->can('last') and $entries = $plugin->last() }
+    foreach my $plugin (@plugins) {
+        if ( $plugins{$plugin} > 0 and $plugin->can('last') ) {
+            $entries = $plugin->last();
+        }
+    }
 
   } # End skip
 
   # Finally, add the header, if any and running dynamically
-  $static_or_dynamic eq 'dynamic' and $header and $output = header($header) . $output;
+  $output = header($header) . $output if ($static_or_dynamic eq 'dynamic' and $header);
   
   $output;
 }