hush: yet another randomconfig fix

This commit is contained in:
Denis Vlasenko 2009-04-03 21:16:45 +00:00
parent cc8289dc04
commit e0755e58ca

View File

@ -994,22 +994,12 @@ static void set_fatal_signals_to_sigexit(void)
/*maybe_set_sighandler(SIGTERM);*/ /*maybe_set_sighandler(SIGTERM);*/
/*maybe_set_sighandler(SIGINT );*/ /*maybe_set_sighandler(SIGINT );*/
} }
/* Used only to suppress ^Z in `cmd` */
static void set_jobctrl_signals_to_IGN(void)
{
bb_signals(0
+ (1 << SIGTSTP)
+ (1 << SIGTTIN)
+ (1 << SIGTTOU)
, SIG_IGN);
}
#else /* !JOB */ #else /* !JOB */
#define set_fatal_signals_to_sigexit(handler) ((void)0) #define set_fatal_signals_to_sigexit(handler) ((void)0)
#define set_jobctrl_signals_to_IGN(handler) ((void)0)
#endif /* JOB */ #endif
/* Restores tty foreground process group, and exits. */ /* Restores tty foreground process group, and exits. */
static void hush_exit(int exitcode) NORETURN; static void hush_exit(int exitcode) NORETURN;
@ -3754,7 +3744,11 @@ static FILE *generate_stream_from_list(struct pipe *head)
* 'command execution'. * 'command execution'.
* SUSv3 says ctrl-Z should be ignored, ctrl-C should not. * SUSv3 says ctrl-Z should be ignored, ctrl-C should not.
*/ */
set_jobctrl_signals_to_IGN(); bb_signals(0
+ (1 << SIGTSTP)
+ (1 << SIGTTIN)
+ (1 << SIGTTOU)
, SIG_IGN);
/* Note: freeing 'head' here would break NOMMU. */ /* Note: freeing 'head' here would break NOMMU. */
_exit(run_list(head)); _exit(run_list(head));