summaryrefslogtreecommitdiff
path: root/ext/spl/tests/bug72684.phpt
diff options
context:
space:
mode:
Diffstat (limited to 'ext/spl/tests/bug72684.phpt')
-rw-r--r--ext/spl/tests/bug72684.phpt21
1 files changed, 21 insertions, 0 deletions
diff --git a/ext/spl/tests/bug72684.phpt b/ext/spl/tests/bug72684.phpt
new file mode 100644
index 0000000000..7a99901f53
--- /dev/null
+++ b/ext/spl/tests/bug72684.phpt
@@ -0,0 +1,21 @@
+--TEST--
+Bug #72684 (AppendIterator segfault with closed generator)
+--FILE--
+<?php
+
+function createGenerator() { yield 1; }
+$generator = createGenerator();
+
+$appendIterator = new AppendIterator();
+$appendIterator->append($generator);
+
+iterator_to_array($appendIterator);
+try {
+ iterator_to_array($appendIterator);
+} catch (\Exception $e) {
+ echo $e->getMessage();
+}
+
+?>
+--EXPECT--
+Cannot traverse an already closed generator