=== modified file 'modules/image/image.field.inc'
--- modules/image/image.field.inc	2010-10-31 12:11:59 +0000
+++ modules/image/image.field.inc	2011-01-15 16:54:09 +0000
@@ -50,18 +50,18 @@ function image_field_settings_form($fiel
     '#options' => $scheme_options,
     '#default_value' => $settings['uri_scheme'],
     '#description' => t('Select where the final files should be stored. Private file storage has significantly more overhead than public files, but allows restricted access to files within this field.'),
-  );
+  ) + element_info('radios');;
+  array_unshift($form['uri_scheme']['#process'], 'image_field_settings_uri_scheme_process');
 
   $form['default_image'] = array(
     '#title' => t('Default image'),
     '#type' => 'managed_file',
     '#description' => t('If no image is uploaded, this image will be shown on display.'),
     '#default_value' => $field['settings']['default_image'],
-    '#upload_location' => 'public://default_images/',
-  );
+  ) + element_info('managed_file');
+  array_unshift($form['default_image']['#process'], 'image_field_settings_default_image_process');
 
   return $form;
-
 }
 
 /**
@@ -556,3 +556,23 @@ function theme_image_formatter($variable
 
   return $output;
 }
+
+function image_field_settings_uri_scheme_process($element, $form_state, &$complete_form) {
+  $array_parents = $element['#array_parents'];
+  // Remove the uri_scheme key and add default_image instead.
+  $array_parents[count($array_parents) - 1] = 'default_image';
+  $default_image_element = &$complete_form;
+  foreach ($array_parents as $key) {
+    $default_image_element = &$default_image_element[$key];
+  }
+  $default_image_element['#upload_location'] = $element['#value'] . '://default_image';
+  return $element;
+}
+
+function image_field_settings_default_image_process($element) {
+  if (!empty($element['#value']['fid']) && ($file = file_load($element['#value']['fid'])) && !$file->status) {
+    $file->status = 1;
+    file_save($file);
+  }
+  return $element;
+}

