Author: ahristov
Date: 2007-06-28 18:21:32 +0200 (Thu, 28 Jun 2007)
New Revision: 578
Modified:
trunk/php5/ext/mysql/php_mysql.c
trunk/php6/ext/mysql/php_mysql.c
Log:
Bring back balance to the Galaxy. When porting to PHP6
someone used the new parameter API and in certain cases
broke the BC by returning NULL when ext/mysql used to return FALSE.
Modified: trunk/php5/ext/mysql/php_mysql.c
- trunk/php5/ext/mysql/php_mysql.c 2007-06-28 15:47:36 UTC (rev 577)
+++ trunk/php5/ext/mysql/php_mysql.c 2007-06-28 16:21:32 UTC (rev 578)
@@ -1692,7 +1692,7 @@
zval **str;
if (ZEND_NUM_ARGS()!=1 || zend_get_parameters_ex(1, &str) == FAILURE) {
- ZEND_WRONG_PARAM_COUNT();
+ WRONG_PARAM_COUNT();
}
convert_to_string_ex(str);
/* assume worst case situation, which is 2x of the original string.
Modified: trunk/php6/ext/mysql/php_mysql.c
- trunk/php6/ext/mysql/php_mysql.c 2007-06-28 15:47:36 UTC (rev 577)
+++ trunk/php6/ext/mysql/php_mysql.c 2007-06-28 16:21:32 UTC (rev 578)
@@ -923,7 +923,7 @@
php_mysql_conn *mysql;
if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "s&|r", &db, &db_len, UG(utf8_conv), &mysql_link) == FAILURE) {
- return;
+ RETURN_FALSE;
}
if (ZEND_NUM_ARGS() == 1) {
@@ -1204,7 +1204,7 @@
php_mysql_conn *mysql;
if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "s&|r", &db, &db_len, UG(utf8_conv), &mysql_link) == FAILURE) {
- return;
+ RETURN_FALSE;
}
if (ZEND_NUM_ARGS() == 1) {
@@ -1234,7 +1234,7 @@
php_mysql_conn *mysql;
if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "s&|r", &db, &db_len, UG(utf8_conv), &mysql_link) == FAILURE) {
- return;
+ RETURN_FALSE;
}
if (ZEND_NUM_ARGS() == 1) {
@@ -1352,7 +1352,7 @@
int id=-1, query_len;
if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "s&|r", &query, &query_len, UG(utf8_conv), &mysql_link) == FAILURE) {
- return;
+ RETURN_FALSE;
}
if (ZEND_NUM_ARGS() == 1) {
@@ -1390,7 +1390,7 @@
int id = -1, db_len, query_len;
if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "s&s&|r", &db, &db_len, UG(utf8_conv), &query, &query_len, UG(utf8_conv), &mysql_link) == FAILURE) {
- return;
+ RETURN_FALSE;
}
if (ZEND_NUM_ARGS() == 2) {
@@ -1450,19 +1450,29 @@
List tables in a MySQL database */
PHP_FUNCTION(mysql_list_tables)
{
- zval *mysql_link;
+ zval *mysql_link = NULL;
char *db;
int id = -1, db_len;
php_mysql_conn *mysql;
MYSQL_RES *mysql_result;
-
- if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "s&|r", &db, &db_len, UG(utf8_conv), &mysql_link) == FAILURE) {
- return;
- }
- if (ZEND_NUM_ARGS() < 2) {
- id = php_mysql_get_default_link(INTERNAL_FUNCTION_PARAM_PASSTHRU);
- CHECK_LINK(id);
+
+ switch(ZEND_NUM_ARGS()) {
+ case 1:
+ if (zend_parse_parameters(1 TSRMLS_CC, "s&", &db, &db_len, UG(utf8_conv)) == FAILURE) {
+ RETURN_FALSE;
+ }
+ id = php_mysql_get_default_link(INTERNAL_FUNCTION_PARAM_PASSTHRU);
+ CHECK_LINK(id);
+ break;
+ case 2:
+ if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "s&r", &db, &db_len, UG(utf8_conv), &mysql_link) == FAILURE) {
+ RETURN_FALSE;
+ }
+ break;
+ default:
+ WRONG_PARAM_COUNT;
+ break;
}
ZEND_FETCH_RESOURCE2(mysql, php_mysql_conn *, &mysql_link, id, "MySQL-Link", le_link, le_plink);
@@ -1492,7 +1502,7 @@
MYSQL_RES *mysql_result;
if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "s&s&|r", &db, &db_len, UG(utf8_conv), &table, &table_len, UG(utf8_conv), &mysql_link) == FAILURE) {
- return;
+ RETURN_FALSE;
}
if (ZEND_NUM_ARGS() < 3) {
--
MySQL Code Commits Mailing List
For list archives:
http://lists.mysql.com/commits
To unsubscribe:
http://lists.mysql.com/commits?unsub=lists@pantek.com
Received on Thu Jun 28 12:21:37 2007