src/share/native/sun/awt/splashscreen/splashscreen_png.c
Print this page
rev 9959 : 8026385: [macosx] (awt) setjmp/longjmp changes the process signal mask on OS X
Reviewed-by:
Contributed-by: David DeHaven <david.dehaven@oracle.com>
@@ -69,11 +69,16 @@
info_ptr = png_create_info_struct(png_ptr);
if (!info_ptr) {
goto done;
}
+#ifdef __APPLE__
+ /* use setjmp/longjmp versions that do not save/restore the signal mask */
+ if (_setjmp(png_set_longjmp_fn(png_ptr, _longjmp, sizeof(jmp_buf)))) {
+#else
if (setjmp(png_jmpbuf(png_ptr))) {
+#endif
goto done;
}
png_set_read_fn(png_ptr, io_ptr, read_func);