diff --git a/winsup/cygwin/ChangeLog b/winsup/cygwin/ChangeLog index 773636a04..d4cdcc213 100644 --- a/winsup/cygwin/ChangeLog +++ b/winsup/cygwin/ChangeLog @@ -1,3 +1,8 @@ +2003-10-31 Thomas Pfaff + + * thread.cc (pthread::thread_init_wrapper): Initialize exception + handling. + 2003-10-31 Thomas Pfaff Rename pthread::running to pthread::valid throughout. 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 #include #include @@ -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;