diff --git a/core/lib/Drupal/Core/Field/FormatterPluginManager.php b/core/lib/Drupal/Core/Field/FormatterPluginManager.php index 7434fe0..cffd8ec 100644 --- a/core/lib/Drupal/Core/Field/FormatterPluginManager.php +++ b/core/lib/Drupal/Core/Field/FormatterPluginManager.php @@ -69,7 +69,10 @@ public function createInstance($plugin_id, array $configuration = array()) { return $plugin_class::create(\Drupal::getContainer(), $configuration, $plugin_id, $plugin_definition); } - return new $plugin_class($plugin_id, $plugin_definition, $configuration['field_definition'], $configuration['settings'], $configuration['label'], $configuration['view_mode'], $configuration['third_party_settings'], $configuration['settings_langcode']); + // Make sure that the settings langcode is set but not persistent. + $settings_langcode = isset($configuration['settings_langcode']) ? $configuration['settings_langcode'] : ''; + + return new $plugin_class($plugin_id, $plugin_definition, $configuration['field_definition'], $configuration['settings'], $configuration['label'], $configuration['view_mode'], $configuration['third_party_settings'], $settings_langcode); } /** @@ -148,7 +151,6 @@ public function prepareConfiguration($field_type, array $configuration) { 'label' => 'above', 'settings' => array(), 'third_party_settings' => array(), - 'settings_langcode' => '', ); // If no formatter is specified, use the default formatter. if (!isset($configuration['type'])) {