diff --git a/core/modules/file/lib/Drupal/file/Plugin/Field/FieldWidget/FileWidget.php b/core/modules/file/lib/Drupal/file/Plugin/Field/FieldWidget/FileWidget.php
index 7ce14b8..17b7ae2 100644
--- a/core/modules/file/lib/Drupal/file/Plugin/Field/FieldWidget/FileWidget.php
+++ b/core/modules/file/lib/Drupal/file/Plugin/Field/FieldWidget/FileWidget.php
@@ -151,7 +151,11 @@ protected function formMultipleElements(FieldItemListInterface $items, array &$f
       $elements['#description'] = $description;
       $elements['#field_name'] = $element['#field_name'];
       $elements['#language'] = $element['#language'];
-      $elements['#display_field'] = (bool) $this->getFieldSetting('display_field');
+      // The field settings include defaults for the field type. However, this
+      // widget is a base class for other widgets (e.g., ImageWidget) that may
+      // act on field types without these expected settings.
+      $field_settings = $this->getFieldSettings() + array('display_field' => NULL);
+      $elements['#display_field'] = (bool) $field_settings['display_field'];
 
       // Add some properties that will eventually be added to the file upload
       // field. These are added here so that they may be referenced easily
diff --git a/core/modules/image/lib/Drupal/image/Plugin/Field/FieldWidget/ImageWidget.php b/core/modules/image/lib/Drupal/image/Plugin/Field/FieldWidget/ImageWidget.php
index 0b2e01d..729bbf8 100644
--- a/core/modules/image/lib/Drupal/image/Plugin/Field/FieldWidget/ImageWidget.php
+++ b/core/modules/image/lib/Drupal/image/Plugin/Field/FieldWidget/ImageWidget.php
@@ -81,6 +81,7 @@ protected function formMultipleElements(FieldItemListInterface $items, array &$f
     $cardinality = $this->fieldDefinition->getFieldCardinality();
     $file_upload_help = array(
       '#theme' => 'file_upload_help',
+      '#description' => '',
       '#upload_validators' => $elements[0]['#upload_validators'],
       '#cardinality' => $cardinality,
     );
@@ -92,7 +93,7 @@ protected function formMultipleElements(FieldItemListInterface $items, array &$f
       }
     }
     else {
-      $elements['#file_upload_description'] = drupal_render($file_upload_help);
+      $elements['#file_upload_description'] = $file_upload_help;
     }
 
     return $elements;
diff --git a/core/modules/image/lib/Drupal/image/Tests/ImageFieldDisplayTest.php b/core/modules/image/lib/Drupal/image/Tests/ImageFieldDisplayTest.php
index 9ef2167..5aff7b6 100644
--- a/core/modules/image/lib/Drupal/image/Tests/ImageFieldDisplayTest.php
+++ b/core/modules/image/lib/Drupal/image/Tests/ImageFieldDisplayTest.php
@@ -221,6 +221,19 @@ function testImageFieldSettings() {
       '%max' => $schema['columns']['title']['length'],
       '%length' => $test_size,
     )));
+
+    // Set cardinality to unlimited and add upload a second image.
+    // The image widget is extending on the file widget, but the image field
+    // type does not have the 'display_field' setting which is expected by
+    // the file widget. This resulted in notices before when cardinality is not
+    // 1, so we need to make sure the file widget prevents these notices by
+    // providing all settings, even if they are not used.
+    // @see FileWidget::formMultipleElements().
+    $this->drupalPostForm('admin/structure/types/manage/article/fields/node.article.' . $field_name . '/field', array('field[cardinality]' => FIELD_CARDINALITY_UNLIMITED), t('Save field settings'));
+    $edit = array();
+    $edit['files[' . $field_name . '_1][]'] = drupal_realpath($test_image->uri);
+    $this->drupalPostForm('node/' . $node->id() . '/edit', $edit, t('Save and keep published'));
+    $this->assertText(format_string('Article @title has been updated.', array('@title' => $node->getTitle())));
   }
 
   /**
