Index: includes/file.inc
===================================================================
RCS file: /cvs/drupal/drupal/includes/file.inc,v
retrieving revision 1.59
diff -u -r1.59 file.inc
--- includes/file.inc	17 Dec 2005 17:24:46 -0000	1.59
+++ includes/file.inc	29 Dec 2005 21:44:24 -0000
@@ -146,6 +146,13 @@
     $file = new StdClass();
     $file->filename = trim(basename($_FILES["edit"]["name"][$source]), '.');
     $file->filepath = $_FILES["edit"]["tmp_name"][$source];
+    // Check if open_basedir restriction in effect
+    if (!is_readable($file->filepath) && ini_get('open_basedir')) {
+      $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);
Index: modules/locale.module
===================================================================
RCS file: /cvs/drupal/drupal/modules/locale.module,v
retrieving revision 1.129
diff -u -r1.129 locale.module
--- modules/locale.module	1 Nov 2005 10:17:34 -0000	1.129
+++ modules/locale.module	29 Dec 2005 21:44:25 -0000
@@ -400,6 +400,7 @@
         drupal_set_message($message, 'error');
         watchdog('locale', $message, WATCHDOG_ERROR);
       }
+      file_delete($file->filepath);
 
       drupal_goto('admin/locale');
       break;
