From 9c0a767a678fcf3aa70ef98c356b911f4a405450 Mon Sep 17 00:00:00 2001 From: Sebastian Rasmussen Date: Sat, 29 Oct 2016 14:39:51 +0800 Subject: jxr: Plug pixmap leak upon error converting CMYK image to RGB. --- source/fitz/load-jxr.c | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/source/fitz/load-jxr.c b/source/fitz/load-jxr.c index 4321c32f..a501e341 100644 --- a/source/fitz/load-jxr.c +++ b/source/fitz/load-jxr.c @@ -398,11 +398,13 @@ fz_load_jxr(fz_context *ctx, unsigned char *data, size_t size) jxr_read_image(ctx, data, size, &info, 0); + image = fz_new_pixmap(ctx, info.cspace, info.width, info.height, 1); + + image->xres = info.xres; + image->yres = info.yres; + fz_try(ctx) { - image = fz_new_pixmap(ctx, info.cspace, info.width, info.height, 1); - image->xres = info.xres; - image->yres = info.yres; fz_unpack_tile(ctx, image, info.samples, fz_colorspace_n(ctx, info.cspace) + 1, 8, info.stride, 0); @@ -428,6 +430,7 @@ fz_load_jxr(fz_context *ctx, unsigned char *data, size_t size) } fz_catch(ctx) { + fz_drop_pixmap(ctx, image); fz_rethrow(ctx); } -- cgit v1.2.3