? registry_25.patch ? sites/all/modules ? sites/default/files ? sites/default/settings.php Index: includes/bootstrap.inc =================================================================== RCS file: /cvs/drupal/drupal/includes/bootstrap.inc,v retrieving revision 1.206 diff -u -r1.206 bootstrap.inc --- includes/bootstrap.inc 10 Jan 2008 22:47:17 -0000 1.206 +++ includes/bootstrap.inc 7 Apr 2008 06:18:50 -0000 @@ -387,12 +387,22 @@ elseif (db_is_active() && (($file = db_result(db_query("SELECT filename FROM {system} WHERE name = '%s' AND type = '%s'", $name, $type))) && file_exists($file))) { $files[$type][$name] = $file; } + elseif (function_exists('drupal_system_listing')) { + // Fallback to using drupal_system_listing if we have a fully bootstrapped + // Drupal, but no active database connection. + $dir = (($type == 'theme_engine') ? 'themes/engines' : "${type}s"); + $file = (($type == 'theme_engine') ? "$name.engine" : "$name.info"); + $file_obj = array_pop(drupal_system_listing($file, $dir)); + if (isset($file_obj->filename)) { + $files[$type][$name] = $file_obj->filename; + } + } else { // Fallback to searching the filesystem if the database connection is // not established or the requested file is not found. $config = conf_path(); $dir = (($type == 'theme_engine') ? 'themes/engines' : "${type}s"); - $file = (($type == 'theme_engine') ? "$name.engine" : "$name.$type"); + $file = (($type == 'theme_engine') ? "$name.engine" : "$name.info"); foreach (array("$config/$dir/$file", "$config/$dir/$name/$file", "$dir/$file", "$dir/$name/$file") as $file) { if (file_exists($file)) {