Skip to content

Commit a3391dc

Browse files
committed
merge from branch
1 parent fc49f76 commit a3391dc

File tree

1 file changed

+4
-3
lines changed

1 file changed

+4
-3
lines changed

ext/mysql/php_mysql.c

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -762,6 +762,7 @@ static void php_mysql_do_connect(INTERNAL_FUNCTION_PARAMETERS, int persistent)
762762
}
763763
if (!passwd) {
764764
passwd = MySG(default_password);
765+
passwd_len = passwd? strlen(passwd):0;
765766
}
766767

767768
/* disable local infile option for open_basedir */
@@ -848,7 +849,7 @@ static void php_mysql_do_connect(INTERNAL_FUNCTION_PARAMETERS, int persistent)
848849
#ifndef MYSQL_USE_MYSQLND
849850
if (mysql_real_connect(mysql->conn, host, user, passwd, NULL, port, socket, client_flags)==NULL)
850851
#else
851-
if (mysqlnd_connect(mysql->conn, host, user, passwd, 0, NULL, 0, port, socket, client_flags TSRMLS_CC) == NULL)
852+
if (mysqlnd_connect(mysql->conn, host, user, passwd, passwd_len, NULL, 0, port, socket, client_flags TSRMLS_CC) == NULL)
852853
#endif
853854
{
854855
/* Populate connect error globals so that the error functions can read them */
@@ -896,7 +897,7 @@ static void php_mysql_do_connect(INTERNAL_FUNCTION_PARAMETERS, int persistent)
896897
#ifndef MYSQL_USE_MYSQLND
897898
if (mysql_real_connect(mysql->conn, host, user, passwd, NULL, port, socket, client_flags)==NULL)
898899
#else
899-
if (mysqlnd_connect(mysql->conn, host, user, passwd, 0, NULL, 0, port, socket, client_flags TSRMLS_CC) == NULL)
900+
if (mysqlnd_connect(mysql->conn, host, user, passwd, passwd_len, NULL, 0, port, socket, client_flags TSRMLS_CC) == NULL)
900901
#endif
901902
{
902903
php_error_docref(NULL TSRMLS_CC, E_WARNING, "Link to server lost, unable to reconnect");
@@ -975,7 +976,7 @@ static void php_mysql_do_connect(INTERNAL_FUNCTION_PARAMETERS, int persistent)
975976
#ifndef MYSQL_USE_MYSQLND
976977
if (mysql_real_connect(mysql->conn, host, user, passwd, NULL, port, socket, client_flags)==NULL)
977978
#else
978-
if (mysqlnd_connect(mysql->conn, host, user, passwd, 0, NULL, 0, port, socket, client_flags TSRMLS_CC) == NULL)
979+
if (mysqlnd_connect(mysql->conn, host, user, passwd, passwd_len, NULL, 0, port, socket, client_flags TSRMLS_CC) == NULL)
979980
#endif
980981
{
981982
/* Populate connect error globals so that the error functions can read them */

0 commit comments

Comments
 (0)