aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--shell/msh.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/shell/msh.c b/shell/msh.c
index b3bb06b28..4fe80fd75 100644
--- a/shell/msh.c
+++ b/shell/msh.c
@@ -3026,6 +3026,10 @@ forkexec(REGISTER struct op *t, int *pin, int *pout, int act, char **wp)
if (resetsig) {
signal(SIGINT, SIG_DFL);
signal(SIGQUIT, SIG_DFL);
+ } else {
+ /* put non-interactive processes into a different process group.
+ * we don't support jobs, but this is at least sane: see Bug 659 */
+ setpgrp();
}
if (t->type == TPAREN)