From 457f81dff4ebf1206812bc13a710866b23f54177 Mon Sep 17 00:00:00 2001 From: cristy Date: Sun, 1 Feb 2015 18:13:23 +0000 Subject: [PATCH] --- coders/jpeg.c | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/coders/jpeg.c b/coders/jpeg.c index 01ba6b476..b280dbd60 100644 --- a/coders/jpeg.c +++ b/coders/jpeg.c @@ -1302,7 +1302,16 @@ static Image *ReadJPEGImage(const ImageInfo *image_info, } status=SetImageExtent(image,image->columns,image->rows,exception); if (status == MagickFalse) - return(DestroyImageList(image)); + { + jpeg_destroy_decompress(&jpeg_info); + return(DestroyImageList(image)); + } + if ((jpeg_info.output_components != 1) && + (jpeg_info.output_components != 3) && (jpeg_info.output_components != 4)) + { + jpeg_destroy_decompress(&jpeg_info); + ThrowReaderException(CorruptImageError,"ImageTypeNotSupported"); + } memory_info=AcquireVirtualMemory((size_t) image->columns, jpeg_info.output_components*sizeof(*jpeg_pixels)); if (memory_info == (MemoryInfo *) NULL) -- 2.40.0