diff --git a/core/lib/Drupal/Core/Entity/EntityViewBuilder.php b/core/lib/Drupal/Core/Entity/EntityViewBuilder.php index cc56e97..4fa3278 100644 --- a/core/lib/Drupal/Core/Entity/EntityViewBuilder.php +++ b/core/lib/Drupal/Core/Entity/EntityViewBuilder.php @@ -134,12 +134,19 @@ public function buildContent(array $entities, array $displays, $view_mode, $lang * @return array */ protected function getBuildDefaults(EntityInterface $entity, $view_mode, $langcode) { + $that = $this; + // Create a closure that uses the current execution context object as its + // invocation object. + $callback = function ($elements) use ($that) { + return $that->entityViewBuilderPreRender($elements); + }; + $return = array( '#theme' => $this->entityType, "#{$this->entityType}" => $entity, '#view_mode' => $view_mode, '#langcode' => $langcode, - '#pre_render' => array(array($this, 'entityViewBuilderPreRender')), + '#pre_render' => array($callback), ); // Cache the rendered output if permitted by the view mode and global entity