summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJakob Kaivo <jkk@ung.org>2023-04-01 20:43:38 -0400
committerJakob Kaivo <jkk@ung.org>2023-04-01 20:43:38 -0400
commit4c554a5723b9d14f2e715829c5827a5eba89011d (patch)
treef7947c88d1046bd97d2993542c6b18f7ecb24a33
parenta46ccd3ebd191c1b685b3c4e0f4c8802631303e1 (diff)
exit on EOF
-rw-r--r--interactive.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/interactive.c b/interactive.c
index 3f753a3..545a52d 100644
--- a/interactive.c
+++ b/interactive.c
@@ -34,6 +34,11 @@ int sh_interactive(void)
};
while (shed(&ed) != NULL) {
+ if (ed.cur->nread == 1 && ed.cur->buf[0] == CTRL_D) {
+ printf("\n");
+ return 0;
+ }
+
struct command *command = sh_parse(ed.cur->buf);
if (command) {
sh_execute(command);