Another update from Larry:
[oweals/busybox.git] / cmdedit.c
index eef1a88c81dd838592770274c5ee41fea850bb68..ce5450032eff30ccdf69d367134d65e013031fb0 100644 (file)
--- a/cmdedit.c
+++ b/cmdedit.c
@@ -1211,7 +1211,8 @@ extern void cmdedit_read_input(char *prompt, char command[BUFSIZ])
                fflush(stdout);                 /* buffered out to fast */
 
                if (read(inputFd, &c, 1) < 1)
-                       return;
+                       /* if we can't read input then exit */
+                       goto prepare_to_die;
 
                switch (c) {
                case '\n':
@@ -1243,6 +1244,7 @@ extern void cmdedit_read_input(char *prompt, char command[BUFSIZ])
                        /* Control-d -- Delete one character, or exit
                         * if the len=0 and no chars to delete */
                        if (len == 0) {
+prepare_to_die:
                                printf("exit");
                                clean_up_and_die(0);
                        } else {