diff --git a/includes/menu.inc b/includes/menu.inc
index 02370ac29a44c3908d6813fc429851836b7ffef9..7e6104d37a35716df5da29afbd34822b57a51af3 100644
--- a/includes/menu.inc
+++ b/includes/menu.inc
@@ -2188,17 +2188,13 @@ function menu_local_tabs() {
 function theme_menu_local_tasks(&$variables) {
   $output = '';
 
-  if (!empty($variables['primary'])) {
-    $variables['primary']['#prefix'] = '<h2 class="element-invisible">' . t('Primary tabs') . '</h2>';
-    $variables['primary']['#prefix'] .= '<ul class="tabs primary">';
-    $variables['primary']['#suffix'] = '</ul>';
-    $output .= drupal_render($variables['primary']);
-  }
-  if (!empty($variables['secondary'])) {
-    $variables['secondary']['#prefix'] = '<h2 class="element-invisible">' . t('Secondary tabs') . '</h2>';
-    $variables['secondary']['#prefix'] .= '<ul class="tabs secondary">';
-    $variables['secondary']['#suffix'] = '</ul>';
-    $output .= drupal_render($variables['secondary']);
+  if ($primary = drupal_render($variables['primary'])) {
+    $output .= '<h2 class="element-invisible">' . t('Primary tabs') . '</h2>';
+    $output .= '<ul class="tabs primary">' . $primary . '</ul>';
+  }
+  if ($secondary = drupal_render($variables['secondary'])) {
+    $output .= '<h2 class="element-invisible">' . t('Secondary tabs') . '</h2>';
+    $output .= '<ul class="tabs secondary">' . $secondary . '</ul>';
   }
 
   return $output;
diff --git a/modules/system/page.tpl.php b/modules/system/page.tpl.php
index 8ffe82aa6298841b63b3f6e493d46bb012261325..bee1a2c49fccf20a7eae79b5d834f8e3812411aa 100644
--- a/modules/system/page.tpl.php
+++ b/modules/system/page.tpl.php
@@ -122,7 +122,7 @@
         <?php print render($title_prefix); ?>
         <?php if ($title): ?><h1 class="title" id="page-title"><?php print $title; ?></h1><?php endif; ?>
         <?php print render($title_suffix); ?>
-        <?php if ($tabs): ?><div class="tabs"><?php print render($tabs); ?></div><?php endif; ?>
+        <?php if ($tabs = render($tabs)): ?><div class="tabs"><?php print $tabs; ?></div><?php endif; ?>
         <?php print render($page['help']); ?>
         <?php if ($action_links): ?><ul class="action-links"><?php print render($action_links); ?></ul><?php endif; ?>
         <?php print render($page['content']); ?>
diff --git a/themes/bartik/templates/page.tpl.php b/themes/bartik/templates/page.tpl.php
index 7b0f99097a0e40b2f6944b61584951430b8a94fe..ec806245450985528e7ebcb9f56e27324e4f423b 100644
--- a/themes/bartik/templates/page.tpl.php
+++ b/themes/bartik/templates/page.tpl.php
@@ -192,9 +192,9 @@
         </h1>
       <?php endif; ?>
       <?php print render($title_suffix); ?>
-      <?php if ($tabs): ?>
+      <?php if ($tabs = render($tabs)): ?>
         <div class="tabs">
-          <?php print render($tabs); ?>
+          <?php print $tabs; ?>
         </div>
       <?php endif; ?>
       <?php print render($page['help']); ?>
diff --git a/themes/garland/page.tpl.php b/themes/garland/page.tpl.php
index 326255cd4ef894a9dcbf6ecf23cae5d76143e51a..cc72b0829242c2b0bc8470584ecfcdb1d7102e33 100644
--- a/themes/garland/page.tpl.php
+++ b/themes/garland/page.tpl.php
@@ -46,7 +46,7 @@
             <h1<?php print $tabs ? ' class="with-tabs"' : '' ?>><?php print $title ?></h1>
           <?php endif; ?>
           <?php print render($title_suffix); ?>
-          <?php if ($tabs): ?><?php print render($tabs); ?></div><?php endif; ?>
+          <?php if ($tabs = render($tabs)): ?><?php print $tabs; ?></div><?php endif; ?>
           <?php print render($tabs2); ?>
           <?php print $messages; ?>
           <?php print render($page['help']); ?>