diff options
Diffstat (limited to 'pjlib/src/pj/compat/sigjmp.c')
-rw-r--r-- | pjlib/src/pj/compat/sigjmp.c | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/pjlib/src/pj/compat/sigjmp.c b/pjlib/src/pj/compat/sigjmp.c new file mode 100644 index 00000000..ead0e363 --- /dev/null +++ b/pjlib/src/pj/compat/sigjmp.c @@ -0,0 +1,21 @@ +#include <pj/config.h>
+#include <pj/compat/setjmp.h>
+
+int __sigjmp_save(sigjmp_buf env, int savemask)
+{
+ return 0;
+}
+
+extern int __sigsetjmp(pj_jmp_buf env, int savemask);
+extern void __longjmp(pj_jmp_buf env, int val) __attribute__((noreturn));
+
+PJ_DEF(int) pj_setjmp(pj_jmp_buf env)
+{
+ return __sigsetjmp(env, 0);
+}
+
+PJ_DEF(void) pj_longjmp(pj_jmp_buf env, int val)
+{
+ __longjmp(env, val);
+}
+
|