Index: includes/common.inc =================================================================== RCS file: /cvs/drupal/drupal/includes/common.inc,v retrieving revision 1.888 diff -u -p -r1.888 common.inc --- includes/common.inc 27 Apr 2009 20:19:35 -0000 1.888 +++ includes/common.inc 29 Apr 2009 22:26:39 -0000 @@ -3422,7 +3422,12 @@ function drupal_render(&$elements) { // Let the theme function in #theme_wrapper add markup around the rendered // children. if (!empty($elements['#theme_wrapper'])) { - $elements['#children'] = theme($elements['#theme_wrapper'], $elements); + if (!is_array($elements['#theme_wrapper'])) { + $elements['#theme_wrapper'] = array($elements['#theme_wrapper']); + } + foreach ($elements['#theme_wrapper'] as $theme_wrapper) { + $elements['#children'] = theme($theme_wrapper, $elements); + } } // Filter the outputted content and make any last changes before the Index: includes/form.inc =================================================================== RCS file: /cvs/drupal/drupal/includes/form.inc,v retrieving revision 1.330 diff -u -p -r1.330 form.inc --- includes/form.inc 29 Apr 2009 07:18:04 -0000 1.330 +++ includes/form.inc 29 Apr 2009 22:26:40 -0000 @@ -2112,7 +2112,7 @@ function theme_checkboxes($element) { function form_pre_render_conditional_form_element($element) { if ($element['#title'] || $element['#description']) { unset($element['#id']); - $element['#theme_wrapper'] = 'form_element'; + $element['#theme_wrapper'] = is_array($element['#theme_wrapper']) ? array_merge($element['#theme_wrapper'], array('form_element')) : array($element['#theme_wrapper'], 'form_element'); } return $element; }