johannes Tue Feb 12 20:43:42 2008 UTC Modified files: (Branch: PHP_5_3) /php-src/ext/mysql php_mysql.c Log: - MFH: Make clear what's going on and avoid overwriting parameters http://cvs.php.net/viewvc.cgi/php-src/ext/mysql/php_mysql.c?r1=1.213.2.6.2.16.2.9&r2=1.213.2.6.2.16.2.10&diff_format=u Index: php-src/ext/mysql/php_mysql.c diff -u php-src/ext/mysql/php_mysql.c:1.213.2.6.2.16.2.9 php-src/ext/mysql/php_mysql.c:1.213.2.6.2.16.2.10 --- php-src/ext/mysql/php_mysql.c:1.213.2.6.2.16.2.9 Tue Feb 12 10:11:55 2008 +++ php-src/ext/mysql/php_mysql.c Tue Feb 12 20:43:42 2008 @@ -18,7 +18,7 @@ +----------------------------------------------------------------------+ */ -/* $Id: php_mysql.c,v 1.213.2.6.2.16.2.9 2008/02/12 10:11:55 felipe Exp $ */ +/* $Id: php_mysql.c,v 1.213.2.6.2.16.2.10 2008/02/12 20:43:42 johannes Exp $ */ /* TODO: * @@ -643,10 +643,19 @@ hashed_details_length = spprintf(&hashed_details, 0, "mysql__%s_", user); client_flags = CLIENT_INTERACTIVE; } else { - if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "|s!s!s!bl", &host_and_port, &host_len, - &user, &user_len, &passwd, &passwd_len, - &new_link, &client_flags)==FAILURE) { - return; + /* mysql_pconnect does not support new_link parameter */ + if (persistent) { + if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "|s!s!s!l", &host_and_port, &host_len, + &user, &user_len, &passwd, &passwd_len, + &client_flags)==FAILURE) { + return; + } + } else { + if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "|s!s!s!bl", &host_and_port, &host_len, + &user, &user_len, &passwd, &passwd_len, + &new_link, &client_flags)==FAILURE) { + return; + } } if (!host_and_port) { @@ -659,11 +668,6 @@ passwd = MySG(default_password); } - /* mysql_pconnect does not support new_link parameter */ - if (persistent) { - client_flags= new_link; - } - /* disable local infile option for open_basedir */ if (((PG(open_basedir) && PG(open_basedir)[0] != '\0') || PG(safe_mode)) && (client_flags & CLIENT_LOCAL_FILES)) { client_flags ^= CLIENT_LOCAL_FILES;
-- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php