* exceptions.cc (interrupt_setup): Ensure that the previous signal mask is

properly saved.
This commit is contained in:
Christopher Faylor 2002-08-16 19:07:28 +00:00
parent a54ad580fc
commit 775275aac7
2 changed files with 7 additions and 1 deletions

View File

@ -1,3 +1,8 @@
2002-08-16 Pavel Tsekov <ptsekov@gmx.net>
* exceptions.cc (interrupt_setup): Ensure that the previous signal mask
is properly saved.
2002-08-15 Thomas Pfaff <tpfaff@gmx.net>
* dcrt0.cc: Modify define for CYGWIN_GUARD.

View File

@ -686,7 +686,8 @@ interrupt_setup (int sig, void *handler, DWORD retaddr, DWORD *retaddr_on_stack,
sigsave.retaddr = retaddr;
sigsave.retaddr_on_stack = retaddr_on_stack;
/* FIXME: Not multi-thread aware */
sigsave.newmask = myself->getsigmask () | siga.sa_mask | SIGTOMASK (sig);
sigsave.oldmask = myself->getsigmask ();
sigsave.newmask = sigsave.oldmask | siga.sa_mask | SIGTOMASK (sig);
sigsave.sa_flags = siga.sa_flags;
sigsave.func = (void (*)(int)) handler;
sigsave.sig = sig;