ID:               21077
 Updated by:       [EMAIL PROTECTED]
 Reported By:      [EMAIL PROTECTED]
-Status:           Open
+Status:           Closed
 Bug Type:         Program Execution
 Operating System: any BSD
 PHP Version:      4CVS-2003-07-15 (dev)
 New Comment:

1) This test was bogus, fixed by hholzgra in 1.1.2.3 
2) The original test, was 
ext/standard/general_functions/proc_open.phpt 
3) Both are working now. 
 
( 4) Why are these tests in different categories? ) 


Previous Comments:
------------------------------------------------------------------------

[2003-07-15 18:59:03] [EMAIL PROTECTED]

Nope. 
 
But then again, going back to 1.84.2.3, which contained the 
fix, also doesn't solve the problem. 
 
So, this is not just an ext/standard/exec.c issue, I'm 
afraid. 
 
Attaching with gdb, lands me anywhere from 
zend_parse_parameters to zend_get_opline(), so that's not 
very useful either. 
 
I can try some release tags tommorow to get a more exact 
location of the breaking commit. 
 
Need sleep now :) 

------------------------------------------------------------------------

[2003-07-15 16:32:38] [EMAIL PROTECTED]

Can you confirm whether the commit by Moriyoshi caused this?


------------------------------------------------------------------------

[2003-07-15 12:59:26] [EMAIL PROTECTED]

Confirmed for PHP_4_3 on FreeBSD 4.8-STABLE.

Updating version, reopening.
cvs -DYesterday ext/standard/exec.c shows a rather large commit by
moriyoshi, done 2003/07/13, concerning a leak fixer (MFH).

Removing assignment for now.

------------------------------------------------------------------------

[2003-07-15 09:51:30] webmaster at ragnarokonline dot de

It looks like, the bug has returned.

the test hangs on 
TEST_PHP_EXECUTABLE=sapi/cli/php \
sapi/cli/php -n run-tests.php \
ext/standard/tests/file/proc_open01.phpt

------------------------------------------------------------------------

[2003-02-26 15:56:09] jlondon at mail dot mcg dot edu

proc_open hangs on the example that is in the manual.  Here is the
code.

$descriptorspec = array(
   0 => array("pipe", "r"),  // stdin is a pipe that the child will
read from
   1 => array("pipe", "w"),  // stdout is a pipe that the child will
write to
   2 => array("file", "c:/temp/error-output.txt", "a"), // stderr is a
file to write to
);
$process = proc_open("c:\php\php.exe", $descriptorspec, $pipes);
if (is_resource($process)) {
    // $pipes now looks like this:
    // 0 => writeable handle connected to child stdin
    // 1 => readable handle connected to child stdout
    // Any error output will be appended to /tmp/error-output.txt

    fwrite($pipes[0], "<?php echo \"Hello World!\"; ?>" . chr(3));
    fclose($pipes[0]);

    while(!feof($pipes[1])) {
        echo fgets($pipes[1], 1024);
    }
    fclose($pipes[1]);
    // It is important that you close any pipes before calling
    // proc_close in order to avoid a deadlock
    $return_value = proc_close($process);

    echo "command returned $return_value\n";
}

I'm running NT4 Server/PHP4.3.2.2/IIS4.  This bit of code opened up 54
php.exe/cmd.exe (that's 54 of each or 108 total) processes on my
machine.

------------------------------------------------------------------------

The remainder of the comments for this report are too long. To view
the rest of the comments, please view the bug report online at
    http://bugs.php.net/21077

-- 
Edit this bug report at http://bugs.php.net/?id=21077&edit=1

Reply via email to