summaryrefslogtreecommitdiff
path: root/Zend/tests/bug64720.phpt
diff options
context:
space:
mode:
Diffstat (limited to 'Zend/tests/bug64720.phpt')
-rw-r--r--Zend/tests/bug64720.phpt48
1 files changed, 48 insertions, 0 deletions
diff --git a/Zend/tests/bug64720.phpt b/Zend/tests/bug64720.phpt
new file mode 100644
index 0000000000..6c33165bb5
--- /dev/null
+++ b/Zend/tests/bug64720.phpt
@@ -0,0 +1,48 @@
+--TEST--
+Bug #64720 (SegFault on zend_deactivate)
+--FILE--
+<?php
+class Stat {
+ private static $requests;
+ public static function getInstance() {
+ if (!isset(self::$requests[1])) {
+ self::$requests[1] = new self();
+ }
+ return self::$requests[1];
+ }
+
+ public function __destruct() {
+ unset(self::$requests[1]);
+ }
+}
+
+class Foo {
+ public function __construct() {
+ Stat::getInstance();
+ }
+}
+
+class Error {
+ private $trace;
+ public function __construct() {
+ $this->trace = debug_backtrace(1);
+ }
+}
+
+class Bar {
+ public function __destruct() {
+ Stat::getInstance();
+ new Error();
+ }
+
+ public function test() {
+ new Error();
+ }
+}
+
+$foo = new Foo();
+$bar = new Bar();
+$bar->test();
+?>
+--EXPECTF--
+Fatal error: Access to undeclared static property: Stat::$requests in %sbug64720.php on line 12