reverted: --- b/core/lib/Drupal/Core/Config/Schema/SchemaCheckTrait.php +++ a/core/lib/Drupal/Core/Config/Schema/SchemaCheckTrait.php @@ -54,9 +54,8 @@ } $definition = $typed_config->getDefinition($config_name); $this->schema = $typed_config->create($definition, $config_data); - $errors = array(); foreach ($config_data as $key => $value) { + $errors = $this->checkValue($key, $value); - $errors = array_merge($errors, $this->checkValue($key, $value)); } if (empty($errors)) { return TRUE; diff -u b/core/modules/field_ui/src/DisplayOverviewBase.php b/core/modules/field_ui/src/DisplayOverviewBase.php --- b/core/modules/field_ui/src/DisplayOverviewBase.php +++ b/core/modules/field_ui/src/DisplayOverviewBase.php @@ -623,8 +623,12 @@ case 'update': // Store the saved settings, and set the field back to 'non edit' mode. $field_name = $trigger['#field_name']; - $form_state['plugin_settings'][$field_name]['settings'] = $form_state['values']['fields'][$field_name]['settings_edit_form']['settings']; - $form_state['plugin_settings'][$field_name]['third_party_settings'] = $form_state['values']['fields'][$field_name]['settings_edit_form']['third_party_settings']; + if (isset($form_state['values']['fields'][$field_name]['settings_edit_form']['settings'])) { + $form_state['plugin_settings'][$field_name]['settings'] = $form_state['values']['fields'][$field_name]['settings_edit_form']['settings']; + } + if (isset($form_state['values']['fields'][$field_name]['settings_edit_form']['third_party_settings'])) { + $form_state['plugin_settings'][$field_name]['third_party_settings'] = $form_state['values']['fields'][$field_name]['settings_edit_form']['third_party_settings']; + } unset($form_state['plugin_settings_edit']); break; diff -u b/core/modules/field_ui/src/Tests/ManageDisplayTest.php b/core/modules/field_ui/src/Tests/ManageDisplayTest.php --- b/core/modules/field_ui/src/Tests/ManageDisplayTest.php +++ b/core/modules/field_ui/src/Tests/ManageDisplayTest.php @@ -134,7 +134,7 @@ $this->assertText('Default empty setting now has a value.'); // Test the settings form behavior. An edit button should be present since - // there are thrid party settings to configure. + // there are third party settings to configure. $edit = array('fields[field_test][type]' => 'field_no_settings', 'refresh_rows' => 'field_test'); $this->drupalPostAjaxForm(NULL, $edit, array('op' => t('Refresh'))); $this->assertFieldByName('field_test_settings_edit');