summaryrefslogtreecommitdiff
path: root/ext/spl/tests/bug41691.phpt
diff options
context:
space:
mode:
Diffstat (limited to 'ext/spl/tests/bug41691.phpt')
-rw-r--r--ext/spl/tests/bug41691.phpt29
1 files changed, 29 insertions, 0 deletions
diff --git a/ext/spl/tests/bug41691.phpt b/ext/spl/tests/bug41691.phpt
new file mode 100644
index 0000000..3cf3d87
--- /dev/null
+++ b/ext/spl/tests/bug41691.phpt
@@ -0,0 +1,29 @@
+--TEST--
+Bug #41691 (ArrayObject::exchangeArray hangs Apache)
+--FILE--
+<?php
+
+class A extends ArrayObject {
+ public function __construct($dummy, $flags) {
+ parent::__construct($this, $flags);
+ }
+ public $a;
+ public $b;
+ public $c;
+}
+
+$a = new A(null, ArrayObject::ARRAY_AS_PROPS );
+var_dump($a->exchangeArray(array('a'=>1,'b'=>1,'c'=>1)));
+
+echo "Done\n";
+?>
+--EXPECTF--
+array(3) {
+ ["a"]=>
+ NULL
+ ["b"]=>
+ NULL
+ ["c"]=>
+ NULL
+}
+Done