summaryrefslogtreecommitdiff
path: root/lib/libkse/thread/thr_sigaction.c
diff options
context:
space:
mode:
Diffstat (limited to 'lib/libkse/thread/thr_sigaction.c')
-rw-r--r--lib/libkse/thread/thr_sigaction.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/lib/libkse/thread/thr_sigaction.c b/lib/libkse/thread/thr_sigaction.c
index bfb67fefad0b..3cd7ea87a97d 100644
--- a/lib/libkse/thread/thr_sigaction.c
+++ b/lib/libkse/thread/thr_sigaction.c
@@ -28,9 +28,12 @@
*
* $FreeBSD$
*/
+
+#include "namespace.h"
#include <signal.h>
#include <errno.h>
#include <pthread.h>
+#include "un-namespace.h"
#include "thr_private.h"
LT10_COMPAT_PRIVATE(_sigaction);
@@ -86,7 +89,7 @@ _sigaction(int sig, const struct sigaction * act, struct sigaction * oact)
* Specify the thread kernel signal
* handler:
*/
- newact.sa_handler = (void (*) ())_thr_sig_handler;
+ newact.sa_sigaction = _thr_sig_handler;
}
/*
* Install libpthread signal handler wrapper
@@ -95,8 +98,7 @@ _sigaction(int sig, const struct sigaction * act, struct sigaction * oact)
* SIG_DFL or SIG_IGN.
*/
if (sig == SIGINFO && _thr_dump_enabled()) {
- newact.sa_handler =
- (void (*) ())_thr_sig_handler;
+ newact.sa_sigaction = _thr_sig_handler;
}
/* Change the signal action in the kernel: */
if (__sys_sigaction(sig, &newact, NULL) != 0) {