summaryrefslogtreecommitdiff
path: root/ext/standard/basic_functions.c
diff options
context:
space:
mode:
authorDmitry Stogov <dmitry@php.net>2008-07-17 09:53:42 +0000
committerDmitry Stogov <dmitry@php.net>2008-07-17 09:53:42 +0000
commit833a2295d143c67295dd94e20a56883b4f2d0787 (patch)
treeae1e5acb20381bbdda96ad813b8772f497329de5 /ext/standard/basic_functions.c
parent47e6c5d017c8e0451003f9eddcfa01db89857bd6 (diff)
downloadphp-git-833a2295d143c67295dd94e20a56883b4f2d0787.tar.gz
Support for closures
Diffstat (limited to 'ext/standard/basic_functions.c')
-rw-r--r--ext/standard/basic_functions.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/ext/standard/basic_functions.c b/ext/standard/basic_functions.c
index fdddcb1b63..afa41e7209 100644
--- a/ext/standard/basic_functions.c
+++ b/ext/standard/basic_functions.c
@@ -5392,6 +5392,10 @@ static int user_tick_function_compare(user_tick_function_entry * tick_fe1, user_
zval result;
zend_compare_arrays(&result, func1, func2 TSRMLS_CC);
ret = (Z_LVAL(result) == 0);
+ } else if (Z_TYPE_P(func1) == IS_OBJECT && Z_TYPE_P(func2) == IS_OBJECT) {
+ zval result;
+ zend_compare_objects(&result, func1, func2 TSRMLS_CC);
+ ret = (Z_LVAL(result) == 0);
} else {
ret = 0;
}
@@ -6044,7 +6048,7 @@ PHP_FUNCTION(register_tick_function)
efree(function_name);
}
- if (Z_TYPE_P(tick_fe.arguments[0]) != IS_ARRAY) {
+ if (Z_TYPE_P(tick_fe.arguments[0]) != IS_ARRAY && Z_TYPE_P(tick_fe.arguments[0]) != IS_OBJECT) {
convert_to_string_ex(&tick_fe.arguments[0]);
}