diff --git a/core/modules/image/image.module b/core/modules/image/image.module
index a57fe55d724bf198e56844dd8ca9045eddb33f0f..dc2599806ff0689a953524407867c41b8b5ca6f1 100644
--- a/core/modules/image/image.module
+++ b/core/modules/image/image.module
@@ -376,9 +376,11 @@ function image_entity_presave(EntityInterface $entity) {
   $entity_type_id = $entity->getEntityTypeId();
   if ($entity_type_id == 'field_instance_config') {
     $field = $entity->getField();
+    $default_settings = \Drupal::service('plugin.manager.field.field_type')->getDefaultInstanceSettings('image');
   }
   elseif ($entity_type_id == 'field_config') {
     $field = $entity;
+    $default_settings = \Drupal::service('plugin.manager.field.field_type')->getDefaultSettings('image');
   }
   // Exit, if not saving an image field or image field instance entity.
   if (!$field || $field->type != 'image') {
@@ -389,20 +391,19 @@ function image_entity_presave(EntityInterface $entity) {
   if ($fid) {
     $original_fid = isset($entity->original) ? $entity->original->settings['default_image']['fid'] : NULL;
     if ($fid != $original_fid) {
-      $image = \Drupal::service('image.factory')->get(file_load($fid)->getFileUri());
-      $entity->settings['default_image']['width'] = $image->getWidth();
-      $entity->settings['default_image']['height'] = $image->getHeight();
+      $file = file_load($fid);
+      if ($file) {
+        $image = \Drupal::service('image.factory')->get($file->getFileUri());
+        $entity->settings['default_image']['width'] = $image->getWidth();
+        $entity->settings['default_image']['height'] = $image->getHeight();
+      }
+      else {
+        $entity->settings['default_image']['fid'] = NULL;
+      }
     }
   }
-  else {
-    $entity->settings['default_image'] = array(
-      'fid' => NULL,
-      'alt' => '',
-      'title' => '',
-      'width' => NULL,
-      'height' => NULL,
-    );
-  }
+
+  $entity->settings['default_image'] += $default_settings['default_image'];
 }
 
 /**
diff --git a/core/modules/image/lib/Drupal/image/Plugin/Field/FieldType/ImageItem.php b/core/modules/image/lib/Drupal/image/Plugin/Field/FieldType/ImageItem.php
index 7a936348aef9e4c9b48faa71ed84de9d9ae4b68d..3ea3d84f1aed1377ceff567798784884c194d849 100644
--- a/core/modules/image/lib/Drupal/image/Plugin/Field/FieldType/ImageItem.php
+++ b/core/modules/image/lib/Drupal/image/Plugin/Field/FieldType/ImageItem.php
@@ -71,6 +71,7 @@ public static function defaultInstanceSettings() {
       'default_image' => array(
         'fid' => NULL,
         'alt' => '',
+        'title' => '',
         'width' => NULL,
         'height' => NULL,
       ),
diff --git a/core/modules/image/lib/Drupal/image/Tests/ImageFieldDefaultImagesTest.php b/core/modules/image/lib/Drupal/image/Tests/ImageFieldDefaultImagesTest.php
index edf1919510db9f1f7973618181657b0eb5cd5020..c0fd5d7d9c86e7b50224cf0702e18994b35c570d 100644
--- a/core/modules/image/lib/Drupal/image/Tests/ImageFieldDefaultImagesTest.php
+++ b/core/modules/image/lib/Drupal/image/Tests/ImageFieldDefaultImagesTest.php
@@ -291,4 +291,43 @@ public function testDefaultImages() {
     );
   }
 
+  /**
+   * Tests image field and instance having an invalid default image.
+   */
+  public  function testInvalidDefaultImage() {
+    $field = array(
+      'name' => drupal_strtolower($this->randomName()),
+      'entity_type' => 'node',
+      'type' => 'image',
+      'settings' => array(
+        'default_image' => array(
+          'fid' => 100000,
+        )
+      ),
+    );
+    $instance = array(
+      'field_name' => $field['name'],
+      'label' => $this->randomName(),
+      'entity_type' => 'node',
+      'bundle' => 'page',
+      'settings' => array(
+        'default_image' => array(
+          'fid' => 100000,
+        )
+      ),
+    );
+    $field_config = entity_create('field_config', $field);
+    $field_config->save();
+    $settings = $field_config->getSettings();
+    // The non-existent default image should not be saved.
+    $this->assertNull($settings['default_image']['fid']);
+
+    $field_instance_config = entity_create('field_instance_config', $instance);
+    $field_instance_config->save();
+    $settings = $field_instance_config->getSettings();
+    // The non-existent default image should not be saved.
+    $this->assertNull($settings['default_image']['fid']);
+
+  }
+
 }
diff --git a/core/modules/user/lib/Drupal/user/Tests/UserCreateTest.php b/core/modules/user/lib/Drupal/user/Tests/UserCreateTest.php
index cc6d2adf1c833aaf0df43b8003c38367f8f2bb82..7ba715db3a720d7f91fd9273e9dc5a0490d5f63f 100644
--- a/core/modules/user/lib/Drupal/user/Tests/UserCreateTest.php
+++ b/core/modules/user/lib/Drupal/user/Tests/UserCreateTest.php
@@ -49,7 +49,6 @@ protected function testUserAdd() {
       'indexes' => array('target_id' => array('target_id')),
       'settings' => array(
         'uri_scheme' => 'public',
-        'default_image' => FALSE,
       ),
     );
     entity_create('field_config', $field)->save();
@@ -69,7 +68,6 @@ protected function testUserAdd() {
         'title_field' => 0,
         'max_resolution' => '85x85',
         'min_resolution' => '',
-        'default_image' => 0,
       ),
     );
     entity_create('field_instance_config', $instance)->save();