Index: includes/locale.inc
===================================================================
RCS file: /cvs/drupal/drupal/includes/locale.inc,v
retrieving revision 1.200
diff -u -r1.200 locale.inc
--- includes/locale.inc	22 Jan 2009 03:29:01 -0000	1.200
+++ includes/locale.inc	29 Jan 2009 13:52:25 -0000
@@ -2204,20 +2204,22 @@
     $status = 'deleted';
   }
 
-  // Only create a new file if the content has changed.
-  if ($data && $language->javascript != $data_hash) {
-    // Ensure that the directory exists and is writable, if possible.
-    file_check_directory($dir, TRUE);
-
-    // Save the file.
-    $dest = $dir . '/' . $language->language . '_' . $data_hash . '.js';
-    if (file_unmanaged_save_data($data, $dest)) {
-      $language->javascript = $data_hash;
-      $status = ($status == 'deleted') ? 'updated' : 'created';
-    }
-    else {
-      $language->javascript = '';
-      $status = 'error';
+  // Only create a new file if the content has changed or if the file does not exist.
+  if ($data) {
+    $dest = $dir .'/'. $language->language .'_'. $data_hash .'.js';
+    if (!file_exists($dest) || $language->javascript != $data_hash) {
+      // Ensure that the directory exists and is writable, if possible.
+      file_check_directory($dir, TRUE);
+
+      // Save the file.
+      if (file_save_data($data, $dest)) {
+        $language->javascript = $data_hash;
+        $status = ($status == 'deleted') ? 'updated' : 'created';
+      }
+      else {
+        $language->javascript = '';
+        $status = 'error';
+      }
     }
   }
 

