diff --git a/NEWS b/NEWS index 667a0bc591e3..650007b5a090 100644 --- a/NEWS +++ b/NEWS @@ -1,6 +1,9 @@ PHP NEWS ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| -?? ??? ????, PHP 8.6.0alpha1 +?? ??? ????, PHP 8.6.0alpha2 + + +02 Jul 2026, PHP 8.6.0alpha1 - Core: . Added first-class callable cache to share instances for the duration of the diff --git a/docs/release-process.md b/docs/release-process.md index c07f328f2d8c..570107492ac3 100644 --- a/docs/release-process.md +++ b/docs/release-process.md @@ -6,6 +6,7 @@ repository available according to the release schedule. The release schedule for each version is published on the [PHP wiki](https://wiki.php.net): +- [PHP 8.6](https://wiki.php.net/todo/php86) - [PHP 8.5](https://wiki.php.net/todo/php85) - [PHP 8.4](https://wiki.php.net/todo/php84) - [PHP 8.3](https://wiki.php.net/todo/php83) diff --git a/ext/pdo_odbc/odbc_driver.c b/ext/pdo_odbc/odbc_driver.c index 3c8afe2d4215..e499c2fd45b9 100644 --- a/ext/pdo_odbc/odbc_driver.c +++ b/ext/pdo_odbc/odbc_driver.c @@ -603,7 +603,11 @@ static int pdo_odbc_handle_factory(pdo_dbh_t *dbh, zval *driver_options) /* {{{ dsnbuf, sizeof(dsnbuf)-1, &dsnbuflen, SQL_DRIVER_NOPROMPT); } if (!use_direct) { - rc = SQLConnect(H->dbc, (SQLCHAR *) dbh->data_source, SQL_NTS, (SQLCHAR *) dbh->username, SQL_NTS, (SQLCHAR *) dbh->password, SQL_NTS); + /* unixODBC pooling strcmp()s the credentials when matching a cached + * connection and crashes on a NULL username/password, so pass "". */ + rc = SQLConnect(H->dbc, (SQLCHAR *) dbh->data_source, SQL_NTS, + (SQLCHAR *) (dbh->username ? dbh->username : ""), SQL_NTS, + (SQLCHAR *) (dbh->password ? dbh->password : ""), SQL_NTS); } if (rc != SQL_SUCCESS && rc != SQL_SUCCESS_WITH_INFO) {