--- file.inc	2005-12-16 14:23:27.000000000 +0100
+++ file2.inc	2005-12-31 02:46:00.000000000 +0100
@@ -146,6 +146,13 @@ function file_check_upload($source) {
     $file->filename = trim(basename($_FILES["edit"]["name"][$source]), '.');
     $file->filepath = $_FILES["edit"]["tmp_name"][$source];
 
+    if (is_uploaded_file($file->filepath)) {
+      $tmpname = tempnam(file_directory_temp(), 'tmp_');
+      if (move_uploaded_file($file->filepath, $tmpname)) {
+        $file->filepath = $tmpname;
+      }
+    }
+
     if (function_exists('mime_content_type')) {
       $file->filemime = mime_content_type($file->filepath);
       if ($file->filemime != $_FILES["edit"]["type"][$source]) {
@@ -165,6 +172,7 @@ function file_check_upload($source) {
     $file->error = $_FILES["edit"]["error"][$source];
     $file->filesize = $_FILES["edit"]["size"][$source];
     $file->source = $source;
+    $_SESSION['file_uploads'][$source] = $file;
     return $file;
   }
   else {
