From 4a42062b5bb0c127df8ba51d4912927c14f06ad4 Mon Sep 17 00:00:00 2001 From: Dries Buytaert Date: Sat, 9 Jan 2010 06:35:38 +0000 Subject: [PATCH] - Patch #667038 by effulgentsia: optimize template_process(). --- includes/theme.inc | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/includes/theme.inc b/includes/theme.inc index 0bea6fa9a92..cb4ca3417c2 100644 --- a/includes/theme.inc +++ b/includes/theme.inc @@ -2288,9 +2288,12 @@ function template_process(&$variables, $hook) { $variables['classes'] = implode(' ', $variables['classes_array']); // Flatten out attributes, title_attributes, and content_attributes. - $variables['attributes'] = drupal_attributes($variables['attributes_array']); - $variables['title_attributes'] = drupal_attributes($variables['title_attributes_array']); - $variables['content_attributes'] = drupal_attributes($variables['content_attributes_array']); + // Because this function can be called very often, and often with empty + // attributes, optimize performance by only calling drupal_attributes() if + // necessary. + $variables['attributes'] = $variables['attributes_array'] ? drupal_attributes($variables['attributes_array']) : ''; + $variables['title_attributes'] = $variables['title_attributes_array'] ? drupal_attributes($variables['title_attributes_array']) : ''; + $variables['content_attributes'] = $variables['content_attributes_array'] ? drupal_attributes($variables['content_attributes_array']) : ''; } /**