summaryrefslogtreecommitdiffhomepage
path: root/shell
diff options
context:
space:
mode:
authorDenys Vlasenko <vda.linux@googlemail.com>2021-04-13 16:42:17 +0200
committerDenys Vlasenko <vda.linux@googlemail.com>2021-04-13 16:42:17 +0200
commitf0c0c56e9b67413ef397876e563c14b02a5deb0f (patch)
treec393c0c63d82b336332aa85f13266a53a40b2b60 /shell
parent50a37459ff991cab97e7326490d0637ff1106cc8 (diff)
hush: beautify ^D handling to match ash / bash
function old new delta fgetc_interactive 227 244 +17 Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Diffstat (limited to 'shell')
-rw-r--r--shell/hush.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/shell/hush.c b/shell/hush.c
index 7cc678f3c..144ad3edd 100644
--- a/shell/hush.c
+++ b/shell/hush.c
@@ -2670,6 +2670,8 @@ static int get_user_input(struct in_str *i)
}
if (r < 0) {
/* EOF/error detected */
+ /* ^D on interactive input goes to next line before exiting: */
+ write(STDOUT_FILENO, "\n", 1);
i->p = NULL;
i->peek_buf[0] = r = EOF;
return r;