cvs: php4 /ext/mysql php_mysql.c

From: Date: Thu, 26 Apr 2001 08:22:13 +0000
Subject: cvs: php4 /ext/mysql php_mysql.c
Groups: php.cvs 
Request: Send a blank email to php-cvs+get-5287@lists.php.net to get a copy of this message
cardinal Thu Apr 26 01:22:13 2001 EDT Modified files: /php4/ext/mysql php_mysql.c Log: Enforce the right number of params for mysql_fetch_*() functions, related to bug 9839. Index: php4/ext/mysql/php_mysql.c diff -u php4/ext/mysql/php_mysql.c:1.76 php4/ext/mysql/php_mysql.c:1.77 --- php4/ext/mysql/php_mysql.c:1.76 Tue Mar 13 14:52:53 2001 +++ php4/ext/mysql/php_mysql.c Thu Apr 26 01:22:12 2001 @@ -16,7 +16,7 @@ +----------------------------------------------------------------------+ */ -/* $Id: php_mysql.c,v 1.76 2001/03/13 22:52:53 zeev Exp $ */ +/* $Id: php_mysql.c,v 1.77 2001/04/26 08:22:12 cardinal Exp $ */ /* TODO: @@ -1467,7 +1467,7 @@ /* }}} */ -static void php_mysql_fetch_hash(INTERNAL_FUNCTION_PARAMETERS, int result_type) +static void php_mysql_fetch_hash(INTERNAL_FUNCTION_PARAMETERS, int result_type, int expected_args) { zval **result, **arg2; MYSQL_RES *mysql_result; @@ -1478,6 +1478,10 @@ int i; PLS_FETCH(); + if (ZEND_NUM_ARGS() > expected_args) { + WRONG_PARAM_COUNT; + } + switch (ZEND_NUM_ARGS()) { case 1: if (zend_get_parameters_ex(1, &result)==FAILURE) { @@ -1551,7 +1555,7 @@ Get a result row as an enumerated array */ PHP_FUNCTION(mysql_fetch_row) { - php_mysql_fetch_hash(INTERNAL_FUNCTION_PARAM_PASSTHRU, MYSQL_NUM); + php_mysql_fetch_hash(INTERNAL_FUNCTION_PARAM_PASSTHRU, MYSQL_NUM, 1); } /* }}} */ @@ -1560,7 +1564,7 @@ Fetch a result row as an object */ PHP_FUNCTION(mysql_fetch_object) { - php_mysql_fetch_hash(INTERNAL_FUNCTION_PARAM_PASSTHRU, MYSQL_ASSOC); + php_mysql_fetch_hash(INTERNAL_FUNCTION_PARAM_PASSTHRU, MYSQL_ASSOC, 2); if (return_value->type==IS_ARRAY) { return_value->type=IS_OBJECT; return_value->value.obj.properties = return_value->value.ht; @@ -1574,7 +1578,7 @@ Fetch a result row as an array (associative, numeric or both)*/ PHP_FUNCTION(mysql_fetch_array) { - php_mysql_fetch_hash(INTERNAL_FUNCTION_PARAM_PASSTHRU, 0); + php_mysql_fetch_hash(INTERNAL_FUNCTION_PARAM_PASSTHRU, 0, 2); } /* }}} */ @@ -1583,7 +1587,7 @@ Fetch a result row as an associative array */ PHP_FUNCTION(mysql_fetch_assoc) { - php_mysql_fetch_hash(INTERNAL_FUNCTION_PARAM_PASSTHRU, MYSQL_ASSOC); + php_mysql_fetch_hash(INTERNAL_FUNCTION_PARAM_PASSTHRU, MYSQL_ASSOC, 1); } /* }}} */

« previous php.cvs (#5287) next »