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,79 **** --- 69,84 ---- 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);