diff --git a/core/includes/entity.inc b/core/includes/entity.inc
index b7cb633..61a304e 100644
--- a/core/includes/entity.inc
+++ b/core/includes/entity.inc
@@ -521,7 +521,7 @@ function entity_form_submit_build_entity($entity_type, $entity, $form, &$form_st
   // Invoke all specified builders for copying form values to entity properties.
   if (isset($form['#entity_builders'])) {
     foreach ($form['#entity_builders'] as $function) {
-      call_user_func_array($function, array($entity_type, $entity, $form, $form_state));
+      call_user_func_array($function, array($entity_type, $entity, &$form, &$form_state));
     }
   }
 
diff --git a/core/modules/node/node.module b/core/modules/node/node.module
index 1be8e78..f041f8e 100644
--- a/core/modules/node/node.module
+++ b/core/modules/node/node.module
@@ -2645,7 +2645,7 @@ function node_update_index() {
   $counter = 0;
   foreach (node_load_multiple($nids) as $node) {
     // Determine when the maximum number of indexable items is reached.
-    $counter += 1 + count($node->translations());
+    $counter += count($node->translations());
     if ($counter > $limit) {
       break;
     }
@@ -2665,7 +2665,7 @@ function _node_index_node(Node $node) {
   // results half-life calculation.
   variable_set('node_cron_last', $node->changed);
 
-  $languages = array_merge(array(language_load($node->langcode)), $node->translations());
+  $languages = $node->translations();
 
   foreach ($languages as $language) {
     // Render the node.
diff --git a/core/modules/search/lib/Drupal/search/Tests/SearchMultilingualEntityTest.php b/core/modules/search/lib/Drupal/search/Tests/SearchMultilingualEntityTest.php
