if (!zend_is_callable(&tick_fe.arguments[0], 0, &function_name)) {
efree(tick_fe.arguments);
- php_error_docref(NULL, E_WARNING, "Invalid tick callback '%s' passed", ZSTR_VAL(function_name));
+ zend_type_error("Invalid tick callback '%s' passed", ZSTR_VAL(function_name));
zend_string_release_ex(function_name, 0);
- RETURN_FALSE;
+ return;
} else if (function_name) {
zend_string_release_ex(function_name, 0);
}
--- /dev/null
+--TEST--
+register_tick_function only accepts a valid callback as parameter
+--FILE--
+<?php
+declare(ticks=1);
+
+try {
+ register_tick_function("a");
+} catch (TypeError $exception) {
+ echo $exception->getMessage() . "\n";
+}
+?>
+--EXPECT--
+Invalid tick callback 'a' passed