--- original/image.module 2011-12-13 20:42:15.000000000 +0530 +++ changed/image.module 2012-07-25 11:43:08.615754986 +0530 @@ -996,7 +996,13 @@ */ function _image_insert(&$node, $size, $image_path) { $original_path = $node->images[IMAGE_ORIGINAL]; - if (file_move($image_path, _image_filename($original_path, $size))) { + if(variable_get('keep_the_original_image_when_listed') == 1) { + $file_operation = file_copy($image_path, _image_filename($original_path, $size)); + } + else { + $file_operation = file_move($image_path, _image_filename($original_path, $size)); + } + if ($file_operation) { // Update the node to reflect the actual filename, it may have been changed // if a file of the same name already existed. $node->images[$size] = $image_path;