diff --git a/includes/common.inc b/includes/common.inc index 85c115af82e365b2aff485c2cdcf613fdca90ade..9c4ce49f84ca2b844f8c6b2e77bae28af9c34cf7 100644 --- a/includes/common.inc +++ b/includes/common.inc @@ -5026,6 +5026,9 @@ function drupal_render(&$elements) { return; } + // Get the children of the element, sorted by weight. + $children = element_children($elements, TRUE); + // Initialize this element's #children, unless a #pre_render callback already // preset #children. if (!isset($elements['#children'])) { @@ -5040,8 +5043,7 @@ function drupal_render(&$elements) { // This is the same process as drupal_render_children() but is inlined // for speed. if ($elements['#children'] == '') { - // Iterate through the children of the element, sorted by weight. - foreach (element_children($elements, TRUE) as $key) { + foreach ($children as $key) { $elements['#children'] .= drupal_render($elements[$key]); } }