diff options
author | iedowse <iedowse@FreeBSD.org> | 2001-10-07 16:11:37 +0000 |
---|---|---|
committer | iedowse <iedowse@FreeBSD.org> | 2001-10-07 16:11:37 +0000 |
commit | c0a87dce40181f158d17fdda9ee69070e167ecd9 (patch) | |
tree | 698cc0d2c84ff384bd5a1472f2b6ff0ca9837090 /sys/kern/kern_sig.c | |
parent | 006ac093289731f5518504629edb3a02acb09377 (diff) | |
download | FreeBSD-src-c0a87dce40181f158d17fdda9ee69070e167ecd9.zip FreeBSD-src-c0a87dce40181f158d17fdda9ee69070e167ecd9.tar.gz |
Fix a typo in do_sigaction() where sa_sigaction and sa_handler were
confused. Since sa_sigaction and sa_handler alias each other in a
union, the bug was completely harmless. This had been fixed as part
of the SIGCHLD changes in revision 1.125, but it was reverted when
they were backed out in revision 1.126.
Diffstat (limited to 'sys/kern/kern_sig.c')
-rw-r--r-- | sys/kern/kern_sig.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/sys/kern/kern_sig.c b/sys/kern/kern_sig.c index c1ed0ff..88a24fe 100644 --- a/sys/kern/kern_sig.c +++ b/sys/kern/kern_sig.c @@ -257,11 +257,11 @@ do_sigaction(p, sig, act, oact, old) ps->ps_catchmask[_SIG_IDX(sig)] = act->sa_mask; SIG_CANTMASK(ps->ps_catchmask[_SIG_IDX(sig)]); if (act->sa_flags & SA_SIGINFO) { - ps->ps_sigact[_SIG_IDX(sig)] = act->sa_handler; - SIGADDSET(ps->ps_siginfo, sig); - } else { ps->ps_sigact[_SIG_IDX(sig)] = (__sighandler_t *)act->sa_sigaction; + SIGADDSET(ps->ps_siginfo, sig); + } else { + ps->ps_sigact[_SIG_IDX(sig)] = act->sa_handler; SIGDELSET(ps->ps_siginfo, sig); } if (!(act->sa_flags & SA_RESTART)) |