Subject: bug#12446: port better to POSIX hosts lacking _setjmp

From: Eli Zaretskii <[email-masked]>
Date: Sat, 15 Sep 2012 13:27:13 +0300

> Date: Sat, 15 Sep 2012 03:00:50 -0700
> From: Paul Eggert <[email-masked]>
> CC: [email-masked], [email-masked]
> 
> > longjmp restores the environment, including the signal mask, to what
> > it was when setjmp was called.
> 
> No, sometimes it does, sometimes it doesn't.
> It depends on the platform.  If you want the signal mask
> restored portably, you have to do it some other way, by using
> siglongjmp or pthread_sigmask or something like that.

Yes, but from your description of the "messup" it sounds like _not_
restoring the signal mask will cause the trouble.  After your changes,
we never restore the signal mask, because sigsetjmp is called with its
second argument zero.