diff --git a/wp-includes/sqlite/class-wp-sqlite-db.php b/wp-includes/sqlite/class-wp-sqlite-db.php index 2de3e47f..6ac951f3 100644 --- a/wp-includes/sqlite/class-wp-sqlite-db.php +++ b/wp-includes/sqlite/class-wp-sqlite-db.php @@ -307,6 +307,14 @@ public function db_connect( $allow_bail = true ) { $pdo = $GLOBALS['@pdo']; } if ( defined( 'WP_SQLITE_AST_DRIVER' ) && WP_SQLITE_AST_DRIVER ) { + if ( null === $this->dbname || '' === $this->dbname ) { + $this->bail( + 'The database name was not set. The SQLite driver requires a database name to be set to emulate MySQL information schema tables.', + 'db_connect_fail' + ); + return false; + } + require_once __DIR__ . '/../../wp-includes/parser/class-wp-parser-grammar.php'; require_once __DIR__ . '/../../wp-includes/parser/class-wp-parser.php'; require_once __DIR__ . '/../../wp-includes/parser/class-wp-parser-node.php'; diff --git a/wp-includes/sqlite/db.php b/wp-includes/sqlite/db.php index bb00c335..e60e5f02 100644 --- a/wp-includes/sqlite/db.php +++ b/wp-includes/sqlite/db.php @@ -66,5 +66,5 @@ require_once $crosscheck_tests_file_path; $GLOBALS['wpdb'] = new WP_SQLite_Crosscheck_DB( DB_NAME ); } else { - $GLOBALS['wpdb'] = new WP_SQLite_DB( DB_NAME ); + $GLOBALS['wpdb'] = new WP_SQLite_DB( defined( 'DB_NAME' ) ? DB_NAME : '' ); }