Stanislav Malyshev wrote:
Hi!
We are using setjmp(__bailout) in zend_try, but setjmp behaves
differently on BSD and Linux. POSIX doesn't specify whether the
signal mask should be saved or not for this call, so different
operating systems do different things here. I think it would be more
consistent if we used sigsetjmp(__bailout,0) to always specify that we
don't need to store the signal mask. This avoids an expensive
sigprocmask syscall.
Sounds good. Can we still use longjmp or have to use siglongjmp?
It's the same thing for longjmp. POSIX doesn't specify what should be
done with the signal mask after a longjmp either, so to be consistent we
should use siglongjmp() as well and explicitly define what we want to do
with the signal mask.
I'll work up a patch.
-Rasmus
--
PHP Internals - PHP Runtime Development Mailing List
To unsubscribe, visit: http://www.php.net/unsub.php