diff options
-rw-r--r-- | Zend/tests/bug50261.phpt | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/Zend/tests/bug50261.phpt b/Zend/tests/bug50261.phpt new file mode 100644 index 0000000000..271a2c4805 --- /dev/null +++ b/Zend/tests/bug50261.phpt @@ -0,0 +1,38 @@ +--TEST-- +Bug #50261 (Crash When Calling Parent Constructor with call_user_func()) +--FILE-- +<?php + +class testClass { + function testClass($x) { + echo __METHOD__, " (". $x . ")\n"; + } +} + +class testClass2 extends testClass { + function __construct() { + static $x = 0; + + if ($x) { + print "Infinite loop...\n"; + } else { + $x++; + + parent::__construct(1); + testclass::__construct(2); + call_user_func(array('parent', '__construct'), 3); + call_user_func(array('testclass', '__construct'), 4); + call_user_func(array('testclass', 'testclass'), 5); + } + } +} + +new testClass2; + +?> +--EXPECT-- +testClass::testClass (1) +testClass::testClass (2) +testClass::testClass (3) +testClass::testClass (4) +testClass::testClass (5) |