]> granicus.if.org Git - php/commitdiff
Add test for bug #63741
authorXinchen Hui <laruence@php.net>
Fri, 14 Dec 2012 08:52:56 +0000 (16:52 +0800)
committerXinchen Hui <laruence@php.net>
Fri, 14 Dec 2012 08:52:56 +0000 (16:52 +0800)
Zend/tests/bug63741.phpt [new file with mode: 0644]

diff --git a/Zend/tests/bug63741.phpt b/Zend/tests/bug63741.phpt
new file mode 100644 (file)
index 0000000..fc04c9e
--- /dev/null
@@ -0,0 +1,50 @@
+--TEST--
+Bug #63741 (Crash when autoloading from spl)
+--FILE--
+<?php
+file_put_contents(dirname(__FILE__)."/bug63741.tmp.php",
+<<<'EOT'
+<?php
+if (isset($autoloading))
+{
+    class ClassToLoad
+    {
+        static function func ()
+        {
+            print "OK!\n";
+        }
+    }
+    return;
+}
+else
+{
+    class autoloader
+    {
+        static function autoload($classname)
+        {
+            print "autoloading...\n";
+            $autoloading = true;
+            include __FILE__;
+        }
+    }
+
+    spl_autoload_register(["autoloader", "autoload"]);
+
+    function start()
+    {
+        ClassToLoad::func();
+    }
+
+    start();
+}
+?>
+EOT
+);
+
+include dirname(__FILE__)."/bug63741.tmp.php";
+?>
+--CLEAN--
+<?php unlink(dirname(__FILE__)."/bug63741.tmp.php"); ?>
+--EXPECT--
+autoloading...
+OK!