From dfeb5fbb996960d446f4601ddec9efac1901a208 Mon Sep 17 00:00:00 2001 From: Aaron Schulz Date: Thu, 23 May 2024 12:17:07 -0700 Subject: [PATCH] rdbms: stop passing bogus $dbname values to DatabaseMySQL::open() The documentation does not mention false as an accepted value Change-Id: Iff79788884e8cc8686af08bfbde1704698b6c400 --- includes/installer/MysqlInstaller.php | 4 ++-- includes/installer/MysqlSettingsForm.php | 2 +- includes/libs/rdbms/database/DatabaseMySQL.php | 2 +- includes/libs/rdbms/database/DatabaseSqlite.php | 2 +- 4 files changed, 5 insertions(+), 5 deletions(-) diff --git a/includes/installer/MysqlInstaller.php b/includes/installer/MysqlInstaller.php index ca6af464b1b..e95c4a4f114 100644 --- a/includes/installer/MysqlInstaller.php +++ b/includes/installer/MysqlInstaller.php @@ -114,7 +114,7 @@ class MysqlInstaller extends DatabaseInstaller { 'user' => $this->getVar( '_InstallUser' ), 'password' => $this->getVar( '_InstallPassword' ), 'ssl' => $this->getVar( 'wgDBssl' ), - 'dbname' => false, + 'dbname' => null, 'flags' => 0, 'tablePrefix' => $this->getVar( 'wgDBprefix' ) ] ); $status->setDB( $db ); @@ -378,7 +378,7 @@ class MysqlInstaller extends DatabaseInstaller { 'user' => $dbUser, 'password' => $password, 'ssl' => $this->getVar( 'wgDBssl' ), - 'dbname' => false, + 'dbname' => null, 'flags' => 0, 'tablePrefix' => $this->getVar( 'wgDBprefix' ) ] ); diff --git a/includes/installer/MysqlSettingsForm.php b/includes/installer/MysqlSettingsForm.php index 19f6727e599..657494b9489 100644 --- a/includes/installer/MysqlSettingsForm.php +++ b/includes/installer/MysqlSettingsForm.php @@ -65,7 +65,7 @@ class MysqlSettingsForm extends DatabaseSettingsForm { 'user' => $this->getVar( 'wgDBuser' ), 'password' => $this->getVar( 'wgDBpassword' ), 'ssl' => $this->getVar( 'wgDBssl' ), - 'dbname' => false, + 'dbname' => null, 'flags' => 0, 'tablePrefix' => $this->getVar( 'wgDBprefix' ) ] ); diff --git a/includes/libs/rdbms/database/DatabaseMySQL.php b/includes/libs/rdbms/database/DatabaseMySQL.php index 431342ea00a..cad785d34e1 100644 --- a/includes/libs/rdbms/database/DatabaseMySQL.php +++ b/includes/libs/rdbms/database/DatabaseMySQL.php @@ -138,7 +138,7 @@ class DatabaseMySQL extends Database { try { $this->currentDomain = new DatabaseDomain( - $db && strlen( $db ) ? $db : null, + ( $db !== '' ) ? $db : null, null, $tablePrefix ); diff --git a/includes/libs/rdbms/database/DatabaseSqlite.php b/includes/libs/rdbms/database/DatabaseSqlite.php index 0e537860794..c760f7f00cf 100644 --- a/includes/libs/rdbms/database/DatabaseSqlite.php +++ b/includes/libs/rdbms/database/DatabaseSqlite.php @@ -298,7 +298,7 @@ class DatabaseSqlite extends Database { /** * Generates a database file name. Explicitly public for installer. * @param string $dir Directory where database resides - * @param string|bool $dbName Database name (or false from Database::factory, validated here) + * @param string|null $dbName Database name (or null from Database::factory, validated here) * @return string * @throws DBUnexpectedError */