#22999 [Com]: proc_close() sometimes returns -1 when called process exited with status of 0
ID: 22999
Comment by: liamr at umich dot edu
Reported By: phil at concretecomputing dot co dot uk
Status: No Feedback
Bug Type: Filesystem function related
Operating System: sun os
PHP Version: 5CVS
Assigned To: wez
New Comment:
http://bugs.php.net/bug.php?id=29123 suggests
that --enable-sigchild
prevents pclose and proc_close from obtaining the proper exit status.
This bug (22999) says that this wouldn't be fixed in PHP4, but would be
in PHP5. This is still a problem with 5.2.x.
The tip suggested in http://bugs.php.net/bug.php?id=17538...
$ret = (proc_close($proc) >> 8) & 0xff;
just changes the "-1" into "255"
Do you have any suggestions for anyone who needs to obtain the actual
exit code using pclose() or proc_close() /and/ has to use
--enable-sigchild (because of oracle)?
Previous Comments:
------------------------------------------------------------------------
[2006-08-24 21:04:28] lindsay at bitleap dot com
I still see this problem running php 5.1.4 on linux kernel 2.6.16. I
do use pcntl and the configure command is pasted below. If there is any
additional info I can provide to help, let me know.
Thanks!
Configure Command => './configure' '--prefix=/usr/lib64/php5'
'--sysconfdir=/etc' '--cache-file=./config.cache'
'--with-libdir=lib64'
'--enable-cli' '--disable-cgi'
'--with-config-file-path=/etc/php/cli-php5'
'--with-config-file-scan-dir=/etc/php/cli-php5/ext-active'
'--without-pear' '--disable-bcmath' '--with-bz2'
'--disable-calendar'
'--disable-ctype' '--without-curl' '--without-curlwrappers'
'--disable-dbase' '--disable-dom' '--disable-exif'
'--without-fbsql'
'--without-fdftk' '--disable-filepro' '--disable-ftp'
'--with-gettext'
'--with-gmp' '--disable-hash' '--without-hwapi'
'--without-iconv'
'--without-informix' '--without-kerberos' '--disable-libxml'
'--disable-mbstring' '--with-mcrypt' '--enable-memory-limit'
'--without-mhash' '--without-ming' '--without-msql'
'--without-mssql'
'--with-ncurses' '--with-openssl' '--with-openssl-dir=/usr'
'--enable-pcntl' '--disable-pdo' '--with-pgsql'
'--with-pspell'
'--without-recode' '--disable-simplexml' '--disable-shmop'
'--with-snmp'
'--disable-soap' '--enable-sockets' '--without-sybase'
'--without-sybase-ct' '--enable-sysvmsg' '--enable-sysvsem'
'--enable-sysvshm' '--without-tidy' '--disable-tokenizer'
'--disable-wddx' '--disable-xml' '--disable-xmlreader'
'--disable-xmlwriter' '--without-xmlrpc' '--without-xsl'
'--with-zlib'
'--disable-debug' '--enable-dba' '--without-cdb'
'--with-db4'
'--without-flatfile' '--without-gdbm' '--without-inifile'
'--without-qdbm' '--without-freetype-dir' '--without-t1lib'
'--disable-gd-jis-conv' '--disable-gd-native-ttf'
'--with-jpeg-dir=/usr'
'--with-png-dir=/usr' '--with-xpm-dir=/usr/X11R6' '--with-gd'
'--without-mysqli' '--with-readline' '--without-libedit'
'--without-mm'
'--without-sqlite'
------------------------------------------------------------------------
[2005-08-06 01:00:04] php-bugs at lists dot php dot net
No feedback was provided for this bug for over a week, so it is
being suspended automatically. If you are able to provide the
information that was originally requested, please do so and change
the status of the bug back to "Open".
------------------------------------------------------------------------
[2005-07-30 00:55:45] sniper@php.net
Please try using this CVS snapshot:
http://snaps.php.net/php5-latest.tar.gz
For Windows:
http://snaps.php.net/win32/php5-win32-latest.zip
------------------------------------------------------------------------
[2003-10-08 07:23:47] wez@php.net
Won't fix in PHP 4 (changes required are too messy to
introduce to stable branch), will fix in PHP 5.
------------------------------------------------------------------------
[2003-04-17 13:37:25] michael at six dot de
We have the same issue with pclose()
Testcase:
<?php
$fp = popen("ls","r");
if ($fp) {
while(! feof($fp)) {
fgets($fp,1024);
}
$status = pclose($fp);
print "pclose: status=$status\n";
}
?>
Most of the time $status is -1, sometimes 0.
PHP-4.3.2RC1, Solaris 7, --enable-sigchild
PHP is compiled with --enable-sigchild because the oracle client is
needed too, this was recommended in former bug descriptions. Is this
still the case for oracle?
------------------------------------------------------------------------
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/22999
--
Edit this bug report at http://bugs.php.net/?id=22999&edit=1
Thread (10 messages)