X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2Fgraphics%2Fjpeg%2Fjpegloader.cpp;h=b5801568712ed47f78f1ede3230ce351b1ea0c17;hb=eacf9fc4ab7a95d08414c0d94a46925dd1a987bd;hp=38df34848f5b7ad0e04c1574d43a94aee90d4f6c;hpb=2438c3cdd14087bfc3375ed1f5521ad5c0c09bbc;p=libs%2Fgui.git diff --git a/source/graphics/jpeg/jpegloader.cpp b/source/graphics/jpeg/jpegloader.cpp index 38df348..b580156 100644 --- a/source/graphics/jpeg/jpegloader.cpp +++ b/source/graphics/jpeg/jpegloader.cpp @@ -91,6 +91,9 @@ JpegLoader::JpegLoader(IO::Seekable &io): priv->err_mgr.error_exit = &error_exit; priv->err_mgr.emit_message = &emit_message; + if(setjmp(priv->err_mgr.jmp)) + throw runtime_error("error creating jpeg decompressor: "+priv->err_mgr.message); + jpeg_create_decompress(&priv->jpeg); priv->jpeg.src = &priv->src_mgr; @@ -110,10 +113,10 @@ JpegLoader::~JpegLoader() bool JpegLoader::detect(const string &sig) { - static const char jpeg_sig[] = "\xFF\xD8\xFF"; + static const char jpeg_sig[] = { '\xFF', '\xD8', '\xFF' }; if(sig.size()