diff --git a/sites/all/modules/contrib/ds/modules/ds_extras/ds_extras.module b/sites/all/modules/contrib/ds/modules/ds_extras/ds_extras.module
index 17c6303..f4b027b 100644
--- a/sites/all/modules/contrib/ds/modules/ds_extras/ds_extras.module
+++ b/sites/all/modules/contrib/ds/modules/ds_extras/ds_extras.module
@@ -192,51 +192,6 @@ function ds_extras_form_field_ui_display_overview_form_alter(&$form, &$form_stat
 }
 
 /**
- * Implements hook_field_attach_view_alter().
- */
-function ds_extras_field_attach_view_alter(&$build, $context) {
-
-  // If views and core doesn't send information along on the entity,
-  // Display suite doesn't have a context to render the fields.
-  if (!isset($build['#entity_type']) && !isset($build['#bundle'])) {
-    return;
-  }
-
-  $block_data = &drupal_static('ds_block_region');
-  $region_blocks = variable_get('ds_extras_region_blocks', array());
-
-  if (empty($region_blocks)) {
-    return;
-  }
-
-  $entity_type = $build['#entity_type'];
-  $bundle = $build['#bundle'];
-  $view_mode = $context['view_mode'];
-
-  $properties = array();
-  foreach (element_properties($build) as $property) {
-    $properties[$property] = $build[$property];
-  }
-  $properties['#view_mode'] = $view_mode;
-
-  if ($layout = ds_get_layout($entity_type, $bundle, $view_mode)) {
-    foreach ($region_blocks as $block_key => $block) {
-      if ($block['info'] == "{$entity_type}_{$bundle}_{$view_mode}" && isset($layout['settings']['regions'][$block_key]) && !empty($layout['settings']['regions'][$block_key])) {
-        foreach ($layout['settings']['regions'][$block_key] as $key => $field) {
-          if (isset($build[$field])) {
-            $block_data[$block_key][$field] = $build[$field];
-            unset($build[$field]);
-          }
-        }
-        if (is_array($block_data[$block_key])) {
-          $block_data[$block_key] += $properties;
-        }
-      }
-    }
-  }
-}
-
-/**
  * Implements hook_ds_field_theme_functions_info().
  */
 function ds_extras_ds_field_theme_functions_info() {
@@ -871,7 +826,6 @@ function ds_extras_ds_panels_default_fields($entity_type, $bundle, $view_mode) {
  */
 function ds_extras_entity_view_alter(&$build, $entity_type) {
   static $loaded = array();
-
   // If views and core doesn't send information along on the entity,
   // Display suite doesn't have a context to render the layout.
   if (!isset($build['#entity_type']) || !isset($build['#bundle'])) {
@@ -911,6 +865,59 @@ function ds_extras_entity_view_alter(&$build, $entity_type) {
       ctools_set_no_blocks();
     }
   }
+
+  // Prepare data for any block region content.
+  // NOTE: some conditionals in this code return on false.
+  // If views and core doesn't send information along on the entity,
+  // Display suite doesn't have a context to render the fields.
+  if (!isset($build['#entity_type']) && !isset($build['#bundle'])) {
+    return;
+  }
+
+  $block_data = &drupal_static('ds_block_region');
+  $region_blocks = variable_get('ds_extras_region_blocks', array());
+
+  if (empty($region_blocks)) {
+    return;
+  }
+
+  $entity_type = $build['#entity_type'];
+  $bundle = $build['#bundle'];
+  $view_mode = $build['#view_mode'];
+
+  $properties = array();
+  // We choose a subset of properties from the entity to pass to fields' render
+  // arrays in our block regions.  These are chosen because they are the ones
+  // preent at hook_field_attach_view_alter, where this code was originally
+  // implemented.
+  $passed_properties = array(
+    '#entity_type',
+    '#bundle',
+    '#view_mode',
+    '#pre_render',
+  );
+  foreach (element_properties($build) as $property) {
+    if (in_array($property, $passed_properties)) {
+      $properties[$property] = $build[$property];
+    }
+  }
+  $properties['#view_mode'] = $view_mode;
+
+  if ($layout = ds_get_layout($entity_type, $bundle, $view_mode)) {
+    foreach ($region_blocks as $block_key => $block) {
+      if ($block['info'] == "{$entity_type}_{$bundle}_{$view_mode}" && isset($layout['settings']['regions'][$block_key]) && !empty($layout['settings']['regions'][$block_key])) {
+        foreach ($layout['settings']['regions'][$block_key] as $key => $field) {
+          if (isset($build[$field])) {
+            $block_data[$block_key][$field] = $build[$field];
+            unset($build[$field]);
+          }
+        }
+        if (is_array($block_data[$block_key])) {
+          $block_data[$block_key] += $properties;
+        }
+      }
+    }
+  }
 }
 
 /**
