diff options
-rw-r--r-- | shell/ash.c | 11 |
1 files changed, 4 insertions, 7 deletions
diff --git a/shell/ash.c b/shell/ash.c index 97a28b1f5..01a02d375 100644 --- a/shell/ash.c +++ b/shell/ash.c | |||
@@ -5995,13 +5995,10 @@ static void setjobctl(int enable) | |||
5995 | mflag = 0; | 5995 | mflag = 0; |
5996 | return; | 5996 | return; |
5997 | } | 5997 | } |
5998 | if (initialpgrp == -1) | 5998 | if (initialpgrp == getpgrp()) |
5999 | initialpgrp = getpgrp(); | 5999 | break; |
6000 | else if (initialpgrp != getpgrp()) { | 6000 | killpg(0, SIGTTIN); |
6001 | killpg(initialpgrp, SIGTTIN); | 6001 | } while (1); |
6002 | continue; | ||
6003 | } | ||
6004 | } while (0); | ||
6005 | setsignal(SIGTSTP); | 6002 | setsignal(SIGTSTP); |
6006 | setsignal(SIGTTOU); | 6003 | setsignal(SIGTTOU); |
6007 | setsignal(SIGTTIN); | 6004 | setsignal(SIGTTIN); |