? sites/mysql.drupalhead.local
? sites/pgsql.drupalhead.local
? sites/sqlite.drupalhead.local
Index: install.php
===================================================================
RCS file: /cvs/drupal/drupal/install.php,v
retrieving revision 1.146
diff -u -p -r1.146 install.php
--- install.php	24 Nov 2008 10:41:39 -0000	1.146
+++ install.php	29 Nov 2008 03:08:52 -0000
@@ -392,7 +392,7 @@ function install_settings_form_submit($f
   $database = array_intersect_key($form_state['values']['_database'], array_flip(array('driver', 'database', 'username', 'password', 'host', 'port')));
   // Update global settings array and save
   $settings['databases'] = array(
-    'value'    => array('default' => array('default' => $database)),
+    'value'    => array('default' => array('default' => array_filter($database))),
     'required' => TRUE,
   );
   $settings['db_prefix'] = array(
Index: includes/database/mysql/database.inc
===================================================================
RCS file: /cvs/drupal/drupal/includes/database/mysql/database.inc,v
retrieving revision 1.8
diff -u -p -r1.8 database.inc
--- includes/database/mysql/database.inc	28 Nov 2008 09:27:57 -0000	1.8
+++ includes/database/mysql/database.inc	29 Nov 2008 03:08:52 -0000
@@ -18,10 +18,10 @@ class DatabaseConnection_mysql extends D
   public function __construct(Array $connection_options = array()) {

     $connection_options += array(
-      'transactions' => FALSE,
       'port' => 3306,
     );
-    $this->transactionSupport = $connection_options['transactions'];
+
+    $this->transactionSupport = isset($connection_options['transactions']) ? $connection_options['transactions'] : TRUE;

     $dsn = 'mysql:host=' . $connection_options['host'] . ';port=' . $connection_options['port'] . ';dbname=' . $connection_options['database'];
     parent::__construct($dsn, $connection_options['username'], $connection_options['password'], array(
Index: includes/database/pgsql/database.inc
===================================================================
RCS file: /cvs/drupal/drupal/includes/database/pgsql/database.inc,v
retrieving revision 1.10
diff -u -p -r1.10 database.inc
--- includes/database/pgsql/database.inc	28 Nov 2008 09:27:58 -0000	1.10
+++ includes/database/pgsql/database.inc	29 Nov 2008 03:08:52 -0000
@@ -18,15 +18,12 @@ class DatabaseConnection_pgsql extends D
   public function __construct(Array $connection_options = array()) {

     $connection_options += array(
-      'transactions' => TRUE,
+      'port' => 5432,
     );
-    $this->transactionSupport = $connection_options['transactions'];

-    $dsn = 'pgsql:host=' . $connection_options['host'] . ' dbname=' . $connection_options['database'];
-    if (!empty($connection_options['port'])) {
-      $dsn .= ' port=' . $connection_options['port'];
-    }
+    $this->transactionSupport = isset($connection_options['transactions']) ? $connection_options['transactions'] : TRUE;

+    $dsn = 'pgsql:host=' . $connection_options['host'] . ' dbname=' . $connection_options['database'] . ' port=' . $connection_options['port'];
     parent::__construct($dsn, $connection_options['username'], $connection_options['password'], array(
       // Convert numeric values to strings when fetching.
       PDO::ATTR_STRINGIFY_FETCHES => TRUE,
