diff options
author | Ondřej Surý <ondrej@sury.org> | 2013-04-22 23:32:50 +0200 |
---|---|---|
committer | Ondřej Surý <ondrej@sury.org> | 2013-04-22 23:32:50 +0200 |
commit | 36d5f8a75ae8b89c6e40aa07d037b6ad9109f822 (patch) | |
tree | fa5318ec068d78ce8343952a24caf66e399e075f /src/gd_jpeg.c | |
parent | 35ce262dd4119c49a26d53e5c471aab7ba41112c (diff) | |
download | libgd-36d5f8a75ae8b89c6e40aa07d037b6ad9109f822.tar.gz |
Don't output jpeg error_message directly, but format it first and push it to gd_error_ex(GD_ERROR, ...)
Diffstat (limited to 'src/gd_jpeg.c')
-rw-r--r-- | src/gd_jpeg.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/src/gd_jpeg.c b/src/gd_jpeg.c index 11a1ad3..adb6f96 100644 --- a/src/gd_jpeg.c +++ b/src/gd_jpeg.c @@ -101,9 +101,10 @@ static void jpeg_emit_message(j_common_ptr jpeg_info, int level) static void fatal_jpeg_error(j_common_ptr cinfo) { jmpbuf_wrapper *jmpbufw; + char buffer[JMSG_LENGTH_MAX]; - gd_error("gd-jpeg: JPEG library reports unrecoverable error: "); - (*cinfo->err->output_message)(cinfo); + (*cinfo->err->format_message)(cinfo, buffer); + gd_error(GD_ERROR, "gd-jpeg: JPEG library reports unrecoverable error: %s", buffer); jmpbufw = (jmpbuf_wrapper *)cinfo->client_data; jpeg_destroy(cinfo); @@ -186,6 +187,7 @@ BGD_DECLARE(void) gdImageJpegCtx(gdImagePtr im, gdIOCtx *outfile, int quality) return; } + cinfo.err->emit_message = jpeg_emit_message; cinfo.err->error_exit = fatal_jpeg_error; jpeg_create_compress(&cinfo); |