summaryrefslogtreecommitdiffstats
path: root/sys/compat
diff options
context:
space:
mode:
authorps <ps@FreeBSD.org>2005-05-24 17:52:14 +0000
committerps <ps@FreeBSD.org>2005-05-24 17:52:14 +0000
commit5f0ea7b68ee762b2a4ca6d1346eef29184ddea6f (patch)
treeec7e0d813c32c9cb405fc643e5620dd3c6180fcf /sys/compat
parentf7eb133422e7403e32043b73c7d53caefc35ece8 (diff)
downloadFreeBSD-src-5f0ea7b68ee762b2a4ca6d1346eef29184ddea6f.zip
FreeBSD-src-5f0ea7b68ee762b2a4ca6d1346eef29184ddea6f.tar.gz
Copyout to userland if kern_sigaction succeeds
Diffstat (limited to 'sys/compat')
-rw-r--r--sys/compat/freebsd32/freebsd32_misc.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/sys/compat/freebsd32/freebsd32_misc.c b/sys/compat/freebsd32/freebsd32_misc.c
index d380bd8..49c03c1 100644
--- a/sys/compat/freebsd32/freebsd32_misc.c
+++ b/sys/compat/freebsd32/freebsd32_misc.c
@@ -1145,7 +1145,7 @@ freebsd32_sigaction(struct thread *td, struct freebsd32_sigaction_args *uap)
} else
sap = NULL;
error = kern_sigaction(td, uap->sig, sap, &osa, 0);
- if (error != 0 && uap->oact != NULL) {
+ if (error == 0 && uap->oact != NULL) {
s32.sa_u = PTROUT(osa.sa_handler);
CP(osa, s32, sa_flags);
CP(osa, s32, sa_mask);
@@ -1174,7 +1174,7 @@ freebsd4_freebsd32_sigaction(struct thread *td,
} else
sap = NULL;
error = kern_sigaction(td, uap->sig, sap, &osa, KSA_FREEBSD4);
- if (error != 0 && uap->oact != NULL) {
+ if (error == 0 && uap->oact != NULL) {
s32.sa_u = PTROUT(osa.sa_handler);
CP(osa, s32, sa_flags);
CP(osa, s32, sa_mask);
OpenPOWER on IntegriCloud