Skip to content

Commit c627c85

Browse files
committed
[BUGFIX] Avoid TypeError for database port handling
Using the `typo3DatabasePort` environment variable to define the database server port string-casts the value to an string which is not compatible with the mysqli method `mysqli::real_connect()` and fails with: TypeError: mysqli::real_connect(): Argument #5 ($port) must be of type ?int, string given This change casts the database port to an integer in case a port is provided to avoid PHP TypeError when passing to `mysqli::real_connect()` to align with `ConnectionPool`, which is not used to create the database for the functional test instance. Resolves: #631 Releases: main, 8
1 parent fbe41d2 commit c627c85

File tree

1 file changed

+1
-1
lines changed

1 file changed

+1
-1
lines changed

Classes/Core/Testbase.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -473,7 +473,7 @@ public function getOriginalDatabaseSettingsFromEnvironmentOrLocalConfiguration(a
473473
$originalConfigurationArray['DB']['Connections']['Default']['password'] = $databasePasswordTrimmed;
474474
}
475475
if ($databasePort) {
476-
$originalConfigurationArray['DB']['Connections']['Default']['port'] = $databasePort;
476+
$originalConfigurationArray['DB']['Connections']['Default']['port'] = (int)$databasePort;
477477
}
478478
if ($databaseSocket) {
479479
$originalConfigurationArray['DB']['Connections']['Default']['unix_socket'] = $databaseSocket;

0 commit comments

Comments
 (0)