summaryrefslogtreecommitdiffstats
path: root/winsup/cygwin/thread.cc
diff options
context:
space:
mode:
authorThomas Pfaff <tpfaff@gmx.net>2003-10-31 20:47:14 +0000
committerThomas Pfaff <tpfaff@gmx.net>2003-10-31 20:47:14 +0000
commitf79641318458d44775ea67645e249ec8a6cf25c0 (patch)
tree36bf6465c9f519a1ede0a811e79a25dab69a8faf /winsup/cygwin/thread.cc
parentc6e0f665bce6212ce3a75b8a15b07dfd98239708 (diff)
downloadcygnal-f79641318458d44775ea67645e249ec8a6cf25c0.tar.gz
cygnal-f79641318458d44775ea67645e249ec8a6cf25c0.tar.bz2
cygnal-f79641318458d44775ea67645e249ec8a6cf25c0.zip
* thread.cc (pthread::thread_init_wrapper): Initialize exception handling.
Diffstat (limited to 'winsup/cygwin/thread.cc')
-rw-r--r--winsup/cygwin/thread.cc8
1 files changed, 8 insertions, 0 deletions
diff --git a/winsup/cygwin/thread.cc b/winsup/cygwin/thread.cc
index fce49091f..35f9f50bc 100644
--- a/winsup/cygwin/thread.cc
+++ b/winsup/cygwin/thread.cc
@@ -38,6 +38,7 @@ details. */
#include "pinfo.h"
#include "perprocess.h"
#include "security.h"
+#include "exceptions.h"
#include <semaphore.h>
#include <stdio.h>
#include <sys/timeb.h>
@@ -1894,6 +1895,13 @@ pthread::thread_init_wrapper (void *_arg)
struct sigaction _sigs[NSIG];
sigset_t _sig_mask; /* one set for everything to ignore. */
+ /* According to onno@stack.urc.tue.nl, the exception handler record must
+ be on the stack. */
+ exception_list cygwin_except_entry;
+
+ /* Initialize SIGSEGV handling, etc. */
+ init_exceptions (&cygwin_except_entry);
+
// setup signal structures
thread->sigs = _sigs;
thread->sigmask = &_sig_mask;