ID:               23509
 Updated by:       [EMAIL PROTECTED]
 Reported By:      ldemailly at qualys dot com
-Status:           Verified
+Status:           Assigned
 Bug Type:         CGI related
 Operating System: Linux 2.4.20
 PHP Version:      4.3.2RC3-dev
-Assigned To:      
+Assigned To:      iliaa


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

[2003-05-06 11:58:37] ldemailly at qualys dot com

exit retcode ignored when called from a register_shutdown_function :

Trying to install an exit handler that will check
some conditions to determine the proper exit code
for a PHP shell (CLI) script (unit test, used in
Makefile, should fail if someone in the tested code
somewhere call die("..."))
I found that the exit(status) call within the handler
ignores the status argument and sticks with the original
one; this obviously makes the ability to register a shutdown
function useless for my purpose (any idea on a workaround ?)

repro script:
<?php


function exit_override() {
  echo "should exit with 1\n";
  exit(1);
}

register_shutdown_function("exit_override");

die("calling die...");

?>

testing:
$ php ExitBug.php ; echo $?
calling die...should exit with 1
0
***
zero instead of the expected 1

I guess, if   die("string") would actually imply exit(1) I wouldn't
need this workaround, but either way it seems that the last exit call
should override the shell return status code.

Thanks
Laurent


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


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

Reply via email to