From 413c6dcc3ca3891825ae8239251140882d7c6c6c Mon Sep 17 00:00:00 2001 From: Gerrit Pape Date: Fri, 7 Sep 2018 10:34:14 +0200 Subject: main: Print \n upon EOF (CTRL-D) when run interactively Exiting dash via a ^D instead of with "exit" causes dash to forget to print a newline. sh-3.1$ sh sh-3.1$ ^D sh-3.1$ dash $ sh-3.1$ It is more neat and tidy to send a newline similarly to what bash does, so it doesn't make the next prompt of the parent shell look ugly. Suggested by jidanni. Signed-off-by: Gerrit Pape Signed-off-by: Jonathan Nieder [reworded the patch description] Signed-off-by: Andrej Shadura Bug-Debian: http://bugs.debian.org/476422 Signed-off-by: Herbert Xu --- src/main.c | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) (limited to 'src/main.c') diff --git a/src/main.c b/src/main.c index e8e4256..6d53e00 100644 --- a/src/main.c +++ b/src/main.c @@ -221,8 +221,15 @@ cmdloop(int top) if (!top || numeof >= 50) break; if (!stoppedjobs()) { - if (!Iflag) + if (!Iflag) { + if (iflag) { + out2c('\n'); +#ifdef FLUSHERR + flushout(out2); +#endif + } break; + } out2str("\nUse \"exit\" to leave shell.\n"); } numeof++; -- cgit 1.4.1