From: Bob Weinand Date: Tue, 7 Jul 2015 20:45:34 +0000 (+0200) Subject: Properly exit on EOF on stdin in readline mode X-Git-Tag: php-7.1.1RC1~35^2~74 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=7a8ea0f60d4d4302be7231f4b73c08a209e696d0;p=php Properly exit on EOF on stdin in readline mode --- diff --git a/sapi/phpdbg/phpdbg_cmd.c b/sapi/phpdbg/phpdbg_cmd.c index 36f1a3f4ab..9a3751a424 100644 --- a/sapi/phpdbg/phpdbg_cmd.c +++ b/sapi/phpdbg/phpdbg_cmd.c @@ -729,11 +729,15 @@ readline: PHPDBG_G(last_was_newline) = 1; } - if (!cmd) { - goto readline; - } - if (!(PHPDBG_G(flags) & PHPDBG_IS_REMOTE)) { + if (!cmd) { + if (feof(PHPDBG_G(io)[PHPDBG_STDIN].ptr)) { + PHPDBG_G(flags) |= PHPDBG_IS_QUITTING | PHPDBG_IS_DISCONNECTED; + zend_bailout(); + } + goto readline; + } + add_history(cmd); } #endif diff --git a/sapi/phpdbg/phpdbg_io.c b/sapi/phpdbg/phpdbg_io.c index 70709eadc1..246431ff2d 100644 --- a/sapi/phpdbg/phpdbg_io.c +++ b/sapi/phpdbg/phpdbg_io.c @@ -90,7 +90,6 @@ PHPDBG_API int phpdbg_consume_stdin_line(char *buf) { if (bytes <= 0) { PHPDBG_G(flags) |= PHPDBG_IS_QUITTING | PHPDBG_IS_DISCONNECTED; zend_bailout(); - return 0; } return bytes;