diff options
author | Gerrit Pape <pape@smarden.org> | 2018-09-07 10:34:14 +0200 |
---|---|---|
committer | Herbert Xu <herbert@gondor.apana.org.au> | 2018-11-19 18:59:50 +0800 |
commit | 413c6dcc3ca3891825ae8239251140882d7c6c6c (patch) | |
tree | cf6bb66c05161a2cbad862f8ce2dc223d9cb0c11 /src | |
parent | eval: Report I/O error on stdout (diff) | |
download | dash-413c6dcc3ca3891825ae8239251140882d7c6c6c.tar.gz dash-413c6dcc3ca3891825ae8239251140882d7c6c6c.zip |
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 <pape@smarden.org> Signed-off-by: Jonathan Nieder <jrnieder@gmail.com> [reworded the patch description] Signed-off-by: Andrej Shadura <andrew.shadura@collabora.co.uk> Bug-Debian: http://bugs.debian.org/476422 Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Diffstat (limited to 'src')
-rw-r--r-- | src/main.c | 9 |
1 files changed, 8 insertions, 1 deletions
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++; |