Index: modules/system/system.install
===================================================================
RCS file: /cvs/drupal/drupal/modules/system/system.install,v
retrieving revision 1.229
diff -u -p -r1.229 system.install
--- modules/system/system.install	10 Jan 2008 22:47:17 -0000	1.229
+++ modules/system/system.install	13 Jan 2008 21:27:17 -0000
@@ -52,10 +52,6 @@ function system_requirements($phase) {
     $requirements['webserver']['description'] = $t('Unable to determine your web server type and version. Drupal might not work properly.');
     $requirements['webserver']['severity'] = REQUIREMENT_WARNING;
   }
-  if (ini_get('register_globals')) {
-    $requirements['php']['description'] = $t('<em>register_globals</em> is enabled. Drupal requires this configuration directive to be disabled. Your site may not be secure when <em>register_globals</em> is enabled. The PHP manual has instructions for <a href="http://php.net/configuration.changes">how to change configuration settings</a>.');
-    $requirements['php']['severity'] = REQUIREMENT_ERROR;
-  }
 
   // Test PHP version
   $requirements['php'] = array(
@@ -67,6 +63,23 @@ function system_requirements($phase) {
     $requirements['php']['severity'] = REQUIREMENT_ERROR;
   }
 
+  // Test register_globals setting.
+  // A boolean ini value of off will be returned as an empty string or "0"
+  // while a boolean ini value of on will be returned as "1".
+  // The function can also return the literal string of INI value.
+  $register_globals = ini_get('register_globals');
+  $requirements['register_globals'] = array(
+    'title' => $t('Register globals'),
+  );
+  if (!empty($register_globals) && strtolower($register_globals) != 'off') {
+    $requirements['register_globals']['description'] = $t('<em>register_globals</em> is enabled. Drupal requires this configuration directive to be disabled. Your site may not be secure when <em>register_globals</em> is enabled. The PHP manual has instructions for <a href="http://php.net/configuration.changes">how to change configuration settings</a>.');
+    $requirements['register_globals']['severity'] = REQUIREMENT_ERROR;
+    $requirements['register_globals']['value'] = $t('Enabled (%value)', array('%value' => $register_globals));
+  }
+  else {
+    $requirements['register_globals']['value'] = $t('Disabled (%value)', array('%value' => $register_globals));
+  }
+
   // Test PHP memory_limit
   $memory_limit = ini_get('memory_limit');
   $requirements['php_memory_limit'] = array(
