List:Commits« Previous MessageNext Message »
From:ahristov Date:June 28 2007 6:21pm
Subject:PHP mysqlnd svn commit: r578 - in trunk: php5/ext/mysql php6/ext/mysql
View as plain text  
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) {

Thread
PHP mysqlnd svn commit: r578 - in trunk: php5/ext/mysql php6/ext/mysqlahristov28 Jun