-
Bug
-
Resolution: Fixed
-
P4
-
7u40
-
b22
-
os_x
Issue | Fix Version | Assignee | Priority | Status | Resolution | Resolved In Build |
---|---|---|---|---|---|---|
JDK-8063759 | 8u45 | David Dehaven | P4 | Resolved | Fixed | b01 |
JDK-8051580 | 8u40 | David Dehaven | P4 | Resolved | Fixed | b01 |
JDK-8069802 | emb-8u47 | David Dehaven | P4 | Resolved | Fixed | team |
See JDK-8023786 for a complete description of the problem.
I see several places in the awt and font code that uses setjmp/longjmp which should be changed to use _setjmp/_longjmp on OS X:
$ grep -r longjmp jdk/src
share/native/sun/awt/image/jpeg/imageioJPEG.c: longjmp(myerr->setjmp_buffer, 1);
share/native/sun/awt/image/jpeg/jpegdecoder.c: longjmp(myerr->setjmp_buffer, 1);
share/native/sun/awt/libpng/png.h:PNG_FUNCTION(void, (PNGCAPI *png_longjmp_ptr), PNGARG((jmp_buf, int)), typedef);
share/native/sun/awt/libpng/png.h:PNG_EXPORT(8, jmp_buf*, png_set_longjmp_fn, (png_structp png_ptr,
share/native/sun/awt/libpng/png.h: png_longjmp_ptr longjmp_fn, size_t jmp_buf_size));
share/native/sun/awt/libpng/png.h: (*png_set_longjmp_fn((png_ptr), longjmp, sizeof (jmp_buf)))
share/native/sun/awt/libpng/png.h:PNG_EXPORTA(9, void, png_longjmp, (png_structp png_ptr, int val),
share/native/sun/awt/libpng/pngerror.c: png_longjmp(png_ptr, 1);
share/native/sun/awt/libpng/pngerror.c:png_longjmp,(png_structp png_ptr, int val),PNG_NORETURN)
share/native/sun/awt/libpng/pngerror.c: png_ptr->longjmp_fn(tmp_jmpbuf, val);
share/native/sun/awt/libpng/pngerror.c: png_ptr->longjmp_fn(png_ptr->longjmp_buffer, val);
share/native/sun/awt/splashscreen/splashscreen_jpeg.c: longjmp(myerr->setjmp_buffer, 1);
solaris/native/sun/awt/gtk2_interface.c: longjmp(j, NO_SYMBOL_EXCEPTION);
solaris/native/sun/awt/gtk2_interface.c: longjmp(j, NO_SYMBOL_EXCEPTION);
solaris/native/sun/awt/gtk2_interface.c: longjmp(j, NO_SYMBOL_EXCEPTION);
I see several places in the awt and font code that uses setjmp/longjmp which should be changed to use _setjmp/_longjmp on OS X:
$ grep -r longjmp jdk/src
share/native/sun/awt/image/jpeg/imageioJPEG.c: longjmp(myerr->setjmp_buffer, 1);
share/native/sun/awt/image/jpeg/jpegdecoder.c: longjmp(myerr->setjmp_buffer, 1);
share/native/sun/awt/libpng/png.h:PNG_FUNCTION(void, (PNGCAPI *png_longjmp_ptr), PNGARG((jmp_buf, int)), typedef);
share/native/sun/awt/libpng/png.h:PNG_EXPORT(8, jmp_buf*, png_set_longjmp_fn, (png_structp png_ptr,
share/native/sun/awt/libpng/png.h: png_longjmp_ptr longjmp_fn, size_t jmp_buf_size));
share/native/sun/awt/libpng/png.h: (*png_set_longjmp_fn((png_ptr), longjmp, sizeof (jmp_buf)))
share/native/sun/awt/libpng/png.h:PNG_EXPORTA(9, void, png_longjmp, (png_structp png_ptr, int val),
share/native/sun/awt/libpng/pngerror.c: png_longjmp(png_ptr, 1);
share/native/sun/awt/libpng/pngerror.c:png_longjmp,(png_structp png_ptr, int val),PNG_NORETURN)
share/native/sun/awt/libpng/pngerror.c: png_ptr->longjmp_fn(tmp_jmpbuf, val);
share/native/sun/awt/libpng/pngerror.c: png_ptr->longjmp_fn(png_ptr->longjmp_buffer, val);
share/native/sun/awt/splashscreen/splashscreen_jpeg.c: longjmp(myerr->setjmp_buffer, 1);
solaris/native/sun/awt/gtk2_interface.c: longjmp(j, NO_SYMBOL_EXCEPTION);
solaris/native/sun/awt/gtk2_interface.c: longjmp(j, NO_SYMBOL_EXCEPTION);
solaris/native/sun/awt/gtk2_interface.c: longjmp(j, NO_SYMBOL_EXCEPTION);
- backported by
-
JDK-8051580 [macosx] (awt) setjmp/longjmp changes the process signal mask on OS X
- Resolved
-
JDK-8063759 [macosx] (awt) setjmp/longjmp changes the process signal mask on OS X
- Resolved
-
JDK-8069802 [macosx] (awt) setjmp/longjmp changes the process signal mask on OS X
- Resolved
- relates to
-
JDK-8023720 (hotspot) setjmp/longjmp changes the process signal mask on OS X
- Closed
-
JDK-8023786 (jdk) setjmp/longjmp changes the process signal mask on OS X
- Closed