From fe1e02dab9581d9ba3c9d8371e85072a959c8bce Mon Sep 17 00:00:00 2001 From: Alexandre Alapetite Date: Fri, 29 May 2020 23:55:53 +0200 Subject: Fix PostgreSQL database auto-create with limited rights (#3013) * Fix PostgreSQL database auto-create with limited rights #fix https://github.com/FreshRSS/FreshRSS/issues/3009 Install would fail if the user is not even allowed to connect to the default `postgres` database. * Confused by custom Minz_PDOConnectionException --- lib/lib_install.php | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) (limited to 'lib/lib_install.php') diff --git a/lib/lib_install.php b/lib/lib_install.php index 29dbc7b67..411938059 100644 --- a/lib/lib_install.php +++ b/lib/lib_install.php @@ -94,13 +94,19 @@ function initDb() { //For first connection, use default database for PostgreSQL, empty database for MySQL / MariaDB: $db['base'] = $db['type'] === 'pgsql' ? 'postgres' : ''; $conf->db = $db; - //First connection without database name to create the database - $databaseDAO = FreshRSS_Factory::createDatabaseDAO(); + try { + //First connection without database name to create the database + $databaseDAO = FreshRSS_Factory::createDatabaseDAO(); + } catch (Exception $ex) { + $databaseDAO = null; + } //Restore final database parameters for auto-creation and for future connections $db['base'] = $dbBase; $conf->db = $db; - //Perfom database auto-creation - $databaseDAO->create(); + if ($databaseDAO != null) { + //Perfom database auto-creation + $databaseDAO->create(); + } } //New connection with the database name -- cgit v1.2.3