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;