summaryrefslogtreecommitdiffhomepage
path: root/shell/cmdedit.c
diff options
context:
space:
mode:
authorEric Andersen <andersen@codepoet.org>2001-05-17 00:14:27 +0000
committerEric Andersen <andersen@codepoet.org>2001-05-17 00:14:27 +0000
commitbfae2529b8aa7b12b19da2ec7ad00ba717941074 (patch)
tree975962b521c9e653e63f065fa1ac731f88bbd744 /shell/cmdedit.c
parent2439a5982876ef4c8ec7291e156e73f244775ba8 (diff)
It turns out job control in both hush and lash was broken by the
signal handling in cmdedit.c. Disabling it makes the shells behave themselves again. hush isn't quite there, but is getting close... -Erik
Diffstat (limited to 'shell/cmdedit.c')
-rw-r--r--shell/cmdedit.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/shell/cmdedit.c b/shell/cmdedit.c
index ec9939312..cc39e562a 100644
--- a/shell/cmdedit.c
+++ b/shell/cmdedit.c
@@ -571,6 +571,7 @@ extern void cmdedit_init(void)
atexit(cmdedit_reset_term); /* be sure to do this only once */
}
+#if 0
if ((handlers_sets & SET_TERM_HANDLERS) == 0) {
signal(SIGKILL, clean_up_and_die);
signal(SIGINT, clean_up_and_die);
@@ -578,6 +579,7 @@ extern void cmdedit_init(void)
signal(SIGTERM, clean_up_and_die);
handlers_sets |= SET_TERM_HANDLERS;
}
+#endif
}
@@ -1487,6 +1489,7 @@ prepare_to_die:
extern void cmdedit_terminate(void)
{
cmdedit_reset_term();
+#if 0
if ((handlers_sets & SET_TERM_HANDLERS) != 0) {
signal(SIGKILL, SIG_DFL);
signal(SIGINT, SIG_DFL);
@@ -1495,6 +1498,7 @@ extern void cmdedit_terminate(void)
signal(SIGWINCH, SIG_DFL);
handlers_sets &= ~SET_TERM_HANDLERS;
}
+#endif
}
#endif /* BB_FEATURE_COMMAND_EDITING */