* cygtls.h (__ljfault): Declare.
(_cygtls::return_from_fault): Use __ljfault. * exceptions.cc (set_signal_mask): Revert previous checkin. * gendef (__sjfault): Split out into a separate function which doesn't bother with any special signal locking. routines. (_ljfault): Return from a __sjfault without bothering with signals.
This commit is contained in:
@@ -148,6 +148,8 @@ typedef struct struct_waitq
|
||||
#include "cygerrno.h"
|
||||
|
||||
extern "C" int __sjfault (jmp_buf);
|
||||
extern "C" int __ljfault (jmp_buf, int);
|
||||
|
||||
/*gentls_offsets*/
|
||||
|
||||
typedef __uint32_t __stack_t;
|
||||
@@ -223,7 +225,7 @@ struct _cygtls
|
||||
{
|
||||
if (_myfault_errno)
|
||||
set_errno (_myfault_errno);
|
||||
longjmp ((int *) _myfault, 1);
|
||||
__ljfault ((int *) _myfault, 1);
|
||||
}
|
||||
int setup_fault (jmp_buf j, int myerrno) __attribute__ ((always_inline))
|
||||
{
|
||||
|
Reference in New Issue
Block a user