Index: modules/file/file.field.inc =================================================================== RCS file: /cvs/drupal/drupal/modules/file/file.field.inc,v retrieving revision 1.22 diff -u -r1.22 file.field.inc --- modules/file/file.field.inc 17 Feb 2010 05:39:51 -0000 1.22 +++ modules/file/file.field.inc 9 Mar 2010 00:55:52 -0000 @@ -274,11 +274,10 @@ $fids[] = $item['fid']; } - // Delete items from original object. - list($id, $vid, $bundle) = entity_extract_ids($entity_type, $entity); - $load_function = $entity_type . '_load'; - $original = $load_function($id); + // Get the current values in the entity, and delete files for removed items. + list($id) = entity_extract_ids($entity_type, $entity); + $original = field_attach_load($entity_type, array($id => $entity), FIELD_LOAD_CURRENT, array('field_id' => $field['id'])); if (!empty($original->{$field['field_name']}[$langcode])) { foreach ($original->{$field['field_name']}[$langcode] as $original_item) { if (isset($original_item['fid']) && !in_array($original_item['fid'], $fids)) {