summaryrefslogtreecommitdiff
path: root/ext/standard/tests/file/stream_enclosed.phpt
diff options
context:
space:
mode:
Diffstat (limited to 'ext/standard/tests/file/stream_enclosed.phpt')
-rw-r--r--ext/standard/tests/file/stream_enclosed.phpt20
1 files changed, 20 insertions, 0 deletions
diff --git a/ext/standard/tests/file/stream_enclosed.phpt b/ext/standard/tests/file/stream_enclosed.phpt
new file mode 100644
index 0000000..9520ecc
--- /dev/null
+++ b/ext/standard/tests/file/stream_enclosed.phpt
@@ -0,0 +1,20 @@
+--TEST--
+Unexposed/leaked stream encloses another stream
+--SKIPIF--
+<?php
+if (!function_exists('leak_variable')) die("skip only debug builds");
+--FILE--
+<?php
+$s = fopen('php://temp/maxmemory=1024','wb+');
+
+$t = fopen('php://temp/maxmemory=1024','wb+');
+
+/* force conversion of inner stream to STDIO. */
+$i = 0;
+while ($i++ < 5000) {
+ fwrite($t, str_repeat('a',1024));
+}
+
+leak_variable($s, true);
+leak_variable($t, true);
+--EXPECT--