summaryrefslogtreecommitdiff
path: root/Zend/tests/unexpected_ref_bug.phpt
diff options
context:
space:
mode:
Diffstat (limited to 'Zend/tests/unexpected_ref_bug.phpt')
-rw-r--r--Zend/tests/unexpected_ref_bug.phpt18
1 files changed, 18 insertions, 0 deletions
diff --git a/Zend/tests/unexpected_ref_bug.phpt b/Zend/tests/unexpected_ref_bug.phpt
new file mode 100644
index 0000000..61fe1aa
--- /dev/null
+++ b/Zend/tests/unexpected_ref_bug.phpt
@@ -0,0 +1,18 @@
+--TEST--
+Crash when function parameter modified via unexpected reference
+--FILE--
+<?php
+function my_errorhandler($errno,$errormsg) {
+ global $my_var;
+ $my_var = 0;
+ return true;
+}
+set_error_handler("my_errorhandler");
+$my_var = str_repeat("A",64);
+$data = call_user_func_array("explode",array(new StdClass(), &$my_var));
+$my_var=array(1,2,3);
+$data = call_user_func_array("implode",array(&$my_var, new StdClass()));
+echo "Done.\n";
+?>
+--EXPECTF--
+Done.