diff -u b/core/modules/entity_reference/lib/Drupal/entity_reference/Plugin/field/field_type/ConfigurableEntityReferenceItem.php b/core/modules/entity_reference/lib/Drupal/entity_reference/Plugin/field/field_type/ConfigurableEntityReferenceItem.php --- b/core/modules/entity_reference/lib/Drupal/entity_reference/Plugin/field/field_type/ConfigurableEntityReferenceItem.php +++ b/core/modules/entity_reference/lib/Drupal/entity_reference/Plugin/field/field_type/ConfigurableEntityReferenceItem.php @@ -128,8 +128,6 @@ * {@inheritdoc} */ public function instanceSettingsForm(array $form, array &$form_state) { - $instance = $form_state['instance']; - // Get all selection plugins for this entity type. $selection_plugins = \Drupal::service('plugin.manager.entity_reference.selection')->getSelectionGroups($this->getFieldSetting('target_type')); $handler_groups = array_keys($selection_plugins); @@ -166,7 +164,7 @@ '#type' => 'select', '#title' => t('Reference method'), '#options' => $handlers_options, - '#default_value' => $instance->getFieldSetting('handler'), + '#default_value' => $this->getFieldSetting('handler'), '#required' => TRUE, '#ajax' => TRUE, '#limit_validation_errors' => array(), @@ -186,8 +184,9 @@ '#attributes' => array('class' => array('entity_reference-settings')), ); - $handler = \Drupal::service('plugin.manager.entity_reference.selection')->getSelectionHandler($instance); - $form['handler']['handler_settings'] += $handler->settingsForm($instance); + $field_definition = $this->getFieldDefinition(); + $handler = \Drupal::service('plugin.manager.entity_reference.selection')->getSelectionHandler($field_definition); + $form['handler']['handler_settings'] += $handler->settingsForm($field_definition); return $form; }