summaryrefslogtreecommitdiff
path: root/includes
diff options
context:
space:
mode:
authorDries Buytaert <dries@buytaert.net>2009-07-31 19:56:09 +0000
committerDries Buytaert <dries@buytaert.net>2009-07-31 19:56:09 +0000
commit444e58c71af2790dc1849fd5cf02545051cc010e (patch)
tree676a62a00ebd95e37f346652b75890d6eef55087 /includes
parenta8a15bcd9015914d5350d868760f8d750b80354e (diff)
downloadbrdo-444e58c71af2790dc1849fd5cf02545051cc010e.tar.gz
brdo-444e58c71af2790dc1849fd5cf02545051cc010e.tar.bz2
- Patch #530976 by catch: small performance optimization to drupal_render().
Diffstat (limited to 'includes')
-rw-r--r--includes/common.inc6
1 files changed, 5 insertions, 1 deletions
diff --git a/includes/common.inc b/includes/common.inc
index b1713a8f8..6715fe792 100644
--- a/includes/common.inc
+++ b/includes/common.inc
@@ -3821,6 +3821,7 @@ function drupal_render_page($page) {
* The rendered HTML.
*/
function drupal_render(&$elements) {
+ static $defaults;
// Early-return nothing if user does not have access.
if (!isset($elements) || (isset($elements['#access']) && !$elements['#access'])) {
return;
@@ -3837,7 +3838,10 @@ function drupal_render(&$elements) {
$elements += element_info($elements['#type']);
}
else {
- $elements += element_basic_defaults();
+ if (!isset($defaults)) {
+ $defaults = element_basic_defaults();
+ }
+ $elements += $defaults;
}
// If #markup is not empty and no theme function is set, use theme_markup.