From 8f85dc141a74ea12f794cf5d719728f4d6f02843 Mon Sep 17 00:00:00 2001 From: Bob Weinand Date: Sat, 19 Sep 2015 18:30:07 +0200 Subject: [PATCH] Always properly show exit status in phpdbg Especially when it is only set after main run (e.g. register_shutdown_function) --- sapi/phpdbg/phpdbg.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/sapi/phpdbg/phpdbg.c b/sapi/phpdbg/phpdbg.c index de87242e44..bf3a45184e 100644 --- a/sapi/phpdbg/phpdbg.c +++ b/sapi/phpdbg/phpdbg.c @@ -1305,7 +1305,7 @@ int main(int argc, char **argv) /* {{{ */ zend_bool ext_stmt = 0; zend_bool use_mm_wrappers = 0; zend_bool is_exit; - int exit_status = 0; + int exit_status; #ifdef ZTS void ***tsrm_ls; @@ -1359,6 +1359,7 @@ phpdbg_main: php_optind = 1; opt = 0; sapi_name = NULL; + exit_status = 0; if (settings) { exec = settings->exec; } @@ -1971,6 +1972,10 @@ phpdbg_out: php_request_shutdown(NULL); } zend_end_try(); + if (exit_status == 0) { + exit_status = EG(exit_status); + } + if (!(PHPDBG_G(flags) & PHPDBG_IS_QUITTING)) { if (PHPDBG_G(in_execution) || is_exit) { if (!quit_immediately && !phpdbg_startup_run) { -- 2.40.0