Index: tabs.theme.inc
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/tabs/tabs.theme.inc,v
retrieving revision 1.8
diff -u -p -r1.8 tabs.theme.inc
--- tabs.theme.inc	18 Jan 2010 07:03:44 -0000	1.8
+++ tabs.theme.inc	12 Jan 2011 16:52:18 -0000
@@ -12,9 +12,10 @@
  * @themable
  */
 function theme_tabset($element) {
-  $output = '<div id="tabs-'. $element['#tabset_name'] .'"'. drupal_attributes($element['#attributes']) .'>';
-  $output .= '<div class="description">'. $element['#description'] .'</div>';
-  $output .= '<ul class="clear-block">';
+  $pre = '<div id="tabs-'. $element['#tabset_name'] .'"'. drupal_attributes($element['#attributes']) .'>';
+  $pre .= '<div class="description">'. $element['#description'] .'</div>';
+  $pre .= '<ul class="clear-block">';
+  $output = '';
   foreach (element_children($element) as $key) {
     if (isset($element[$key]['#type']) && $element[$key]['#type'] == 'tabpage') {
       // Ensure the tab has content before rendering it.
@@ -27,12 +28,14 @@ function theme_tabset($element) {
       }
     }
   }
-  $output .= '</ul>';
+  $post .= '</ul>';
   if (isset($element['#children'])) {
-    $output .= $element['#children'];
+    $post .= $element['#children'];
+  }
+  $post .= '</div>';
+  if (!empty($output)) {
+    return $pre . $output . $post;
   }
-  $output .= '</div>';
-  return $output;
 }
 
 /**
