Commit 60b196917f6e5cb58692b701a7e937ecc325dcfd
1 parent
2a913eb1
linux-user: Add support for STOP/CONT signals.
Signed-off-by: Riku Voipio <riku.voipio@iki.fi> git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5802 c046a42c-6fe2-441c-8c8c-71466251a162
Showing
1 changed file
with
6 additions
and
1 deletions
linux-user/signal.c
... | ... | @@ -361,10 +361,15 @@ int queue_signal(CPUState *env, int sig, target_siginfo_t *info) |
361 | 361 | k = &ts->sigtab[sig - 1]; |
362 | 362 | handler = sigact_table[sig - 1]._sa_handler; |
363 | 363 | if (handler == TARGET_SIG_DFL) { |
364 | + if (sig == TARGET_SIGTSTP || sig == TARGET_SIGTTIN || sig == TARGET_SIGTTOU) { | |
365 | + kill(getpid(),SIGSTOP); | |
366 | + return 0; | |
367 | + } else | |
364 | 368 | /* default handler : ignore some signal. The other are fatal */ |
365 | 369 | if (sig != TARGET_SIGCHLD && |
366 | 370 | sig != TARGET_SIGURG && |
367 | - sig != TARGET_SIGWINCH) { | |
371 | + sig != TARGET_SIGWINCH && | |
372 | + sig != TARGET_SIGCONT) { | |
368 | 373 | force_sig(sig); |
369 | 374 | } else { |
370 | 375 | return 0; /* indicate ignored */ | ... | ... |