diff --git a/core/modules/views/views.theme.inc b/core/modules/views/views.theme.inc
index 4178bac..f28d28d 100644
--- a/core/modules/views/views.theme.inc
+++ b/core/modules/views/views.theme.inc
@@ -157,8 +157,10 @@ function template_preprocess_views_view(&$vars) {
   if (views_view_has_form_elements($view)) {
     // Copy the rows so as not to modify them by reference when rendering.
     $rows = $vars['rows'];
-    $rows = drupal_render($rows);
-    $output = !empty($rows) ? $rows : $vars['empty'];
+    if (!($output = drupal_render($rows))) {
+      $empty = $vars['empty'];
+      $output = drupal_render($empty);
+    }
     $form = drupal_get_form(views_form_id($view), $view, $output);
     // The form is requesting that all non-essential views elements be hidden,
     // usually because the rendered step is not a view result.
