From: Fridrich S. <fri...@bl...> - 2010-04-27 22:56:25
|
Hello On Mon, 2010-04-26 at 12:02 -0700, SCU Rock wrote: > While it is still possible that this is a bug in my code, it is not > likely. The crash point is from a stable library WebKit, file > JPEGImageDecoder.cpp, line #169( > http://www.sand-labs.org/aros/browser/trunk/WebCore/platform/image-decoders/jpeg/JPEGImageDecoder.cpp?rev=1380) > > 169 if (setjmp(m_err.setjmp_buffer)) { > > I do not have control of this library. But one thing is sure - it is > stable enough not crashing on JPEG images. That is why I suspect that > it is an environment issue for me. This is a known problem. One of the two, libjpeg or the JPEGImageDecoder.cpp think that boolean is int and the other one is thinking it is char. The caller and the called code will realize that their decompress structs have different size and the exception handler will be called. In Webkit it amounts to a full-blown crash. Funny enough, libjpeg even in its version 8a did not solve this thing. I provide patched libjpeg in my repositories: http://download.opensuse.org/repositories/windows:/mingw:/win32/openSUSE_Factory/noarch/ for those that use mingw-w64 headers and crt and http://download.opensuse.org/repositories/windows:/mingw:/win32:/legacy/openSUSE_Factory/noarch/ for those that use mingw.org w32api and mingw-rt Cheers Fridrich |