Index: includes/database.inc
===================================================================
RCS file: /cvs/drupal/drupal/includes/database.inc,v
retrieving revision 1.27
diff -u -r1.27 database.inc
--- includes/database.inc	1 Oct 2003 05:18:02 -0000	1.27
+++ includes/database.inc	9 Feb 2004 20:33:53 -0000
@@ -27,7 +27,9 @@
   include_once "includes/database.pear.inc";
 }
 
-db_connect($db_url);
+if (DRUPAL_NO_INIT != 1) {
+  db_connect($db_url) or die("Database Connection Unsuccessful");
+}
 
 
 ?>
Index: includes/database.mysql.inc
===================================================================
RCS file: /cvs/drupal/drupal/includes/database.mysql.inc,v
retrieving revision 1.21
diff -u -r1.21 database.mysql.inc
--- includes/database.mysql.inc	8 Dec 2003 06:32:18 -0000	1.21
+++ includes/database.mysql.inc	9 Feb 2004 20:33:53 -0000
@@ -9,8 +9,15 @@
      $url["host"] = $url["host"] . ":" . $url["port"];
   }
 
-  mysql_connect($url["host"], $url["user"], $url["pass"]) or die(mysql_error());
-  mysql_select_db(substr($url["path"], 1)) or die("unable to select database");
+  $valid_db = @mysql_connect($url["host"], $url["user"], $url["pass"]);
+  $valid_table = @mysql_select_db(substr($url["path"], 1));
+
+  if ($valid_db && $valid_table) {
+    return true;
+  }
+  else {
+    return false;
+  }
 
   /*
   ** Note that you can change the 'mysql_connect' statement to 'mysql_pconnect'
Index: includes/database.pear.inc
===================================================================
RCS file: /cvs/drupal/drupal/includes/database.pear.inc,v
retrieving revision 1.22
diff -u -r1.22 database.pear.inc
--- includes/database.pear.inc	8 Dec 2003 06:32:18 -0000	1.22
+++ includes/database.pear.inc	9 Feb 2004 20:33:54 -0000
@@ -9,7 +9,10 @@
   $db_handle = DB::connect($url);
 
   if (DB::isError($db_handle)) {
-    die("Database problem: ". $db_handle->getMessage());
+    return false;
+  } 
+  else {
+    return true;
   }
 
   $db_handle->setFetchMode(DB_FETCHMODE_ASSOC);
