diff options
author | Gerhard Killesreiter <killes_www_drop_org@227.no-reply.drupal.org> | 2006-04-28 12:40:54 +0000 |
---|---|---|
committer | Gerhard Killesreiter <killes_www_drop_org@227.no-reply.drupal.org> | 2006-04-28 12:40:54 +0000 |
commit | d04b65967327b770cf9b9eb7a4e8bbfb502cd1a5 (patch) | |
tree | 7abc3de82e8c9d21de54eebec2b18b15f9fcf5e4 /includes/form.inc | |
parent | f16b6b2901810787a61a3721f2aa4b8dbce20a7e (diff) | |
download | brdo-d04b65967327b770cf9b9eb7a4e8bbfb502cd1a5.tar.gz brdo-d04b65967327b770cf9b9eb7a4e8bbfb502cd1a5.tar.bz2 |
#60797, theme('taxonomy_term_select', $element) called, but output is ignored, patch by chx
Diffstat (limited to 'includes/form.inc')
-rw-r--r-- | includes/form.inc | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/includes/form.inc b/includes/form.inc index 2c3344f6c..a74558b96 100644 --- a/includes/form.inc +++ b/includes/form.inc @@ -496,8 +496,8 @@ function form_render(&$elements) { } $content = ''; uasort($elements, "_form_sort"); - if (!isset($elements['#children'])) { + $children = element_children($elements); /* Render all the children that use a theme function */ if (isset($elements['#theme']) && !$elements['#theme_used']) { $elements['#theme_used'] = TRUE; @@ -511,12 +511,15 @@ function form_render(&$elements) { $elements['#value'] = $previous_value; $elements['#type'] = $previous_type; - + // if we rendered a single element, then we will skip the renderer + if (empty($children)) { + $elements['#printed'] = TRUE; + } unset($elements['#prefix'], $elements['#suffix']); } /* render each of the children using form_render and concatenate them */ if (!$content) { - foreach (element_children($elements) as $key) { + foreach ($children as $key) { $content .= form_render($elements[$key]); } } @@ -525,7 +528,7 @@ function form_render(&$elements) { $elements['#children'] = $content; } - /* Call the form element renderer */ + // Until now, we rendered the children, here we render the element itself if (!isset($elements['#printed'])) { $content = theme(($elements['#type']) ? $elements['#type']: 'markup', $elements); $elements['#printed'] = TRUE; |