cvs: php4 /ext/standard basic_functions.c
| From: | Andrei Zmievski | Date: | Mon, 14 May 2001 20:56:05 +0000 |
| Subject: | cvs: php4 /ext/standard basic_functions.c | ||
| Groups: | php.cvs | ||
| Request: | Send a blank email to php-cvs+get-5743@lists.php.net to get a copy of this message | ||
andrei Mon May 14 13:56:05 2001 EDT
Modified files:
/php4/ext/standard basic_functions.c
Log:
Clean up call_user_func_*().
Index: php4/ext/standard/basic_functions.c
diff -u php4/ext/standard/basic_functions.c:1.336 php4/ext/standard/basic_functions.c:1.337
--- php4/ext/standard/basic_functions.c:1.336 Mon May 14 13:06:06 2001
+++ php4/ext/standard/basic_functions.c Mon May 14 13:56:05 2001
@@ -17,7 +17,7 @@
+----------------------------------------------------------------------+
*/
-/* $Id: basic_functions.c,v 1.336 2001/05/14 20:06:06 sterling Exp $ */
+/* $Id: basic_functions.c,v 1.337 2001/05/14 20:56:05 andrei Exp $ */
#include "php.h"
#include "php_main.h"
@@ -1610,12 +1610,12 @@
zval ***params;
zval *retval_ptr;
char *name;
- zend_bool callable;
int argc = ZEND_NUM_ARGS();
if (argc < 1) {
WRONG_PARAM_COUNT;
}
+
params = emalloc(sizeof(zval **) * argc);
if (zend_get_parameters_array_ex(argc, params)==FAILURE) {
@@ -1628,9 +1628,10 @@
convert_to_string_ex(params[0]);
}
- callable = zend_is_callable(*params[0], 0, &name);
- if (! callable) {
- php_error(E_WARNING, "Argument 1 to call_user_func() must be a valid callback");
+ if (!zend_is_callable(*params[0], 0, &name)) {
+ php_error(E_WARNING, "%s() expects first argument, '%s', to be a valid
callback",
+ get_active_function_name(), name);
+ efree(name);
efree(params);
RETURN_NULL();
}
@@ -1638,7 +1639,7 @@
if (call_user_function_ex(EG(function_table), NULL, *params[0], &retval_ptr, argc - 1, params
+ 1, 0, NULL)==SUCCESS && retval_ptr) {
COPY_PZVAL_TO_ZVAL(*return_value, retval_ptr);
} else {
- php_error(E_WARNING, "Unable to call function %s()", name);
+ php_error(E_WARNING, "Unable to call %s()", name);
}
efree(name);
@@ -1656,7 +1657,6 @@
zval *retval_ptr;
HashTable *func_params_ht;
char *name;
- zend_bool callable;
int count;
int current = 0;
@@ -1672,9 +1672,10 @@
convert_to_string_ex(func);
}
- callable = zend_is_callable(*func, 0, &name);
- if (! callable) {
- php_error(E_WARNING, "Argument 1 to call_user_func_array() must be a valid callback");
+ if (!zend_is_callable(*func, 0, &name)) {
+ php_error(E_WARNING, "%s() expects first argument, '%s', to be a valid
callback",
+ get_active_function_name(), name);
+ efree(name);
RETURN_NULL();
}