Ove Kaaven wrote:
> On 29 Dec 2000, Alexandre Julliard wrote:
> 
> > I'd find it cleaner to only block the signals that can actually cause
> > trouble (SIGALRM, SIGINT, SIGIO), and to not unblock them at all
> > during signal handling.
> 
> Not unblock them? But wouldn't that cause problems when some signal
> handlers throw exceptions, and the exception handler decides to take the
> exception and thus force a stack unwind? I assumed that if that happened,
> then the normal sigaction mechanism wouldn't get its own chance to
> unblock. Or how does this work?

The way it is supposed to work is that you use sigsetjmp/siglongjmp 
instead of setjmp/longjmp to jump out of a signal handler.  The
siglongjmp call resets the blocked signal mask to be the same as at 
the time of the sigsetjmp call.

We currently don't use sigsetjmp/siglongjmp for exceptions, but we
probably should ...

Bye,
Ulrich

-- 
  Dr. Ulrich Weigand
  [EMAIL PROTECTED]

Reply via email to