From: SVN Migration Date: Sun, 13 Jul 2003 08:03:47 +0000 (+0000) Subject: This commit was manufactured by cvs2svn to create branch 'PHP_4_3'. X-Git-Tag: php-4.3.3RC2~126 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=35b40bdb2ac0fd7a6ca6c8be8846c3ffb650c57d;p=php This commit was manufactured by cvs2svn to create branch 'PHP_4_3'. --- diff --git a/ext/standard/tests/file/proc_open01.phpt b/ext/standard/tests/file/proc_open01.phpt new file mode 100644 index 0000000000..ab41a35819 --- /dev/null +++ b/ext/standard/tests/file/proc_open01.phpt @@ -0,0 +1,58 @@ +--TEST-- +proc_open() regression test 1 (proc_open() leak) +--FILE-- + array('pipe', 'r'), 1 => array('pipe', 'w')), + $pipes +); +if ($proc === false) { + print "something went wrong.\n"; +} +var_dump($pipes); +stream_set_blocking($pipes[1], FALSE); +$test_string = "yay!\n"; +fwrite($pipes[0], $test_string); +fflush($pipes[0]); +fclose($pipes[0]); +$cnt = ''; +for ($left = strlen($test_string); $left > 0;) { + $read_fds = array($pipes[1]); + $retval = stream_select($read_fds, $write_fds = NULL, $exp_fds = NULL, 1); + if ($retval === false) { + print "select() failed\n"; + break; + } + if ($retval === 0) { + print "timed out\n"; + break; + } + $buf = fread($pipes[1], 1024); + $cnt .= $buf; + $left -= strlen($buf); +} +var_dump($cnt); +fclose($pipes[1]); +proc_close($proc); +var_dump($orig_pipes); +?> +--EXPECTF-- +array(2) { + [0]=> + resource(%d) of type (stream) + [1]=> + resource(%d) of type (stream) +} +string(5) "yay! +" +array(3) { + [0]=> + int(1) + [1]=> + int(2) + [2]=> + int(3) +}