Index: modules/system.module
===================================================================
RCS file: /cvs/drupal/drupal/modules/system.module,v
retrieving revision 1.291
diff -u -r1.291 system.module
--- modules/system.module       21 Feb 2006 18:46:54 -0000      1.291
+++ modules/system.module       21 Feb 2006 19:11:30 -0000
@@ -517,9 +517,16 @@
  */
 function system_get_files_database(&$files, $type) {
   // Extract current files from database.
-  $result = db_query("SELECT name, type, status, throttle, schema_version FROM {system} WHERE type = '%s'", $type);
+  $result = db_query("SELECT filename, name, type, status, throttle, schema_version FROM {system} WHERE type = '%s'", $type);
   while ($file = db_fetch_object($result)) {
     if (isset($files[$file->name]) && is_object($files[$file->name])) {
+      // Update filename in table if file has moved
+      if ($file->filename != $files[$file->name]->filename) {
+       watchdog('file system', t('%oldfile has moved to %newfile.', array('%oldfile' => $file->filename, '%newfile' => $files[$file->name]->filename)));
+       db_query("UPDATE {system} SET filename = '%s' WHERE name = '%s'", $files[$file->name]->filename, $file->name);
+       $file->filename = $files[$file->name]->filename;
+      }
+
       foreach ($file as $key => $value) {
         if (!isset($files[$file->name]) || !isset($files[$file->name]->$key)) {
           $files[$file->name]->$key = $value;
