From 46d957294599abee450b893b6bc4275b27954e30 Mon Sep 17 00:00:00 2001 From: Reeze Xia Date: Fri, 13 Feb 2015 17:45:43 +0800 Subject: Fixed phpdbg zend_bailout error when compiling syntax error code @krakjoe if there is something wrong, tell me plz --- sapi/phpdbg/phpdbg.c | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) (limited to 'sapi/phpdbg/phpdbg.c') diff --git a/sapi/phpdbg/phpdbg.c b/sapi/phpdbg/phpdbg.c index 3337f05cdc..74bf84adff 100644 --- a/sapi/phpdbg/phpdbg.c +++ b/sapi/phpdbg/phpdbg.c @@ -65,6 +65,7 @@ PHP_INI_BEGIN() PHP_INI_END() static zend_bool phpdbg_booted = 0; +static zend_bool phpdbg_fully_started = 0; #if PHP_VERSION_ID >= 50500 void (*zend_execute_old)(zend_execute_data *execute_data); @@ -523,6 +524,10 @@ static void php_sapi_phpdbg_log_message(char *message) /* {{{ */ phpdbg_list_file(file, 3, zend_get_executed_lineno() - 1, zend_get_executed_lineno()); efree(file); + if (!phpdbg_fully_started) { + return; + } + do { switch (phpdbg_interactive(1)) { case PHPDBG_LEAVE: @@ -1476,7 +1481,11 @@ phpdbg_main: if (settings) { PHPDBG_G(flags) |= PHPDBG_DISCARD_OUTPUT; } - phpdbg_compile(); + + zend_try { + phpdbg_compile(); + } zend_end_try(); + PHPDBG_G(flags) &= ~PHPDBG_DISCARD_OUTPUT; } @@ -1485,6 +1494,8 @@ phpdbg_main: PHPDBG_G(flags) |= PHPDBG_IS_STEPPING; } + phpdbg_fully_started = 1; + /* #ifndef for making compiler shutting up */ #ifndef _WIN32 phpdbg_interact: -- cgit v1.2.1