diff options
Diffstat (limited to 'includes/file.inc')
-rw-r--r-- | includes/file.inc | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/includes/file.inc b/includes/file.inc index 742c20e72..e8db63448 100644 --- a/includes/file.inc +++ b/includes/file.inc @@ -574,6 +574,11 @@ function file_save(stdClass $file) { $file->timestamp = REQUEST_TIME; $file->filesize = filesize($file->uri); + // Load the stored entity, if any. + if (!empty($file->fid) && !isset($file->original)) { + $file->original = entity_load_unchanged('file', $file->fid); + } + if (empty($file->fid)) { drupal_write_record('file_managed', $file); // Inform modules about the newly added file. @@ -587,6 +592,7 @@ function file_save(stdClass $file) { module_invoke_all('entity_update', $file, 'file'); } + unset($file->original); return $file; } |