]> granicus.if.org Git - php/commitdiff
- Added test for bug #50261
authorFelipe Pena <felipe@php.net>
Mon, 23 Nov 2009 23:07:07 +0000 (23:07 +0000)
committerFelipe Pena <felipe@php.net>
Mon, 23 Nov 2009 23:07:07 +0000 (23:07 +0000)
Zend/tests/bug50261.phpt [new file with mode: 0644]

diff --git a/Zend/tests/bug50261.phpt b/Zend/tests/bug50261.phpt
new file mode 100644 (file)
index 0000000..271a2c4
--- /dev/null
@@ -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)