summaryrefslogtreecommitdiff
path: root/modules/system
diff options
context:
space:
mode:
authorDries Buytaert <dries@buytaert.net>2005-12-09 15:40:15 +0000
committerDries Buytaert <dries@buytaert.net>2005-12-09 15:40:15 +0000
commitadcbc9b957e2d8c49b236e4ca1c890ca312a3836 (patch)
tree365a5457fcab7e6a7dc79fe77bf6f29ddb79dee3 /modules/system
parente70cb8b523c05189c65a9926c3259822fe431669 (diff)
downloadbrdo-adcbc9b957e2d8c49b236e4ca1c890ca312a3836.tar.gz
brdo-adcbc9b957e2d8c49b236e4ca1c890ca312a3836.tar.bz2
- Patch #40524 by drumm: made sure that visiting the admin/modules page does not break your setup if you haven't run udpate.php yet.
Diffstat (limited to 'modules/system')
-rw-r--r--modules/system/system.module9
1 files changed, 7 insertions, 2 deletions
diff --git a/modules/system/system.module b/modules/system/system.module
index 94cd94035..e8e544487 100644
--- a/modules/system/system.module
+++ b/modules/system/system.module
@@ -891,8 +891,13 @@ function system_modules() {
}
// Update the contents of the system table:
- db_query("DELETE FROM {system} WHERE name = '%s' AND type = '%s'", $file->name, 'module');
- db_query("INSERT INTO {system} (name, description, type, filename, status, throttle, bootstrap, schema_version) VALUES ('%s', '%s', '%s', '%s', %d, %d, %d, %d)", $file->name, $file->description, 'module', $file->filename, $file->status, $file->throttle, $bootstrap, $file->schema_version);
+ if (isset($file->status)) {
+ db_query("UPDATE {system} SET description = '%s', filename = '%s', bootstrap = %d WHERE name = '%s'", $file->description, $file->filename, $bootstrap, $file->name);
+ }
+ else {
+ // This is a new module.
+ db_query("INSERT INTO {system} (name, description, type, filename, status, throttle, bootstrap) VALUES ('%s', '%s', '%s', '%s', %d, %d, %d)", $file->name, $file->description, 'module', $file->filename, $file->status, $file->throttle, $bootstrap);
+ }
}