From: glennrp Date: Thu, 9 Apr 2015 16:51:44 +0000 (+0000) Subject: Avoid using NULL alpha_image in the JNG decoder. X-Git-Tag: 7.0.1-0~1119 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=889a928b732161b6353bd880e5ea0802f184c6d4;p=imagemagick Avoid using NULL alpha_image in the JNG decoder. --- diff --git a/coders/png.c b/coders/png.c index 6dd3a125d..371918573 100644 --- a/coders/png.c +++ b/coders/png.c @@ -4393,7 +4393,7 @@ static Image *ReadOneJNGImage(MngInfo *mng_info, /* Copy IDAT header and chunk data to alpha_image->blob */ - if (image_info->ping == MagickFalse) + if (alpha_image != NULL && image_info->ping == MagickFalse) { if (logging != MagickFalse) (void) LogMagickEvent(CoderEvent,GetMagickModule(), @@ -4418,7 +4418,7 @@ static Image *ReadOneJNGImage(MngInfo *mng_info, { /* Copy chunk data to alpha_image->blob */ - if (image_info->ping == MagickFalse) + if (alpha_image != NULL && image_info->ping == MagickFalse) { if (logging != MagickFalse) (void) LogMagickEvent(CoderEvent,GetMagickModule(), @@ -4868,8 +4868,7 @@ static Image *ReadMNGImage(const ImageInfo *image_info,ExceptionInfo *exception) page_geometry[MaxTextExtent]; Image - *image, - *previous; + *image; MagickBooleanType logging, @@ -6353,7 +6352,6 @@ static Image *ReadMNGImage(const ImageInfo *image_info,ExceptionInfo *exception) ThrowReaderException(CorruptImageError,"ImproperImageHeader"); } - previous=image; mng_info->image=image; mng_info->mng_type=mng_type; mng_info->object_id=object_id; @@ -6368,11 +6366,9 @@ static Image *ReadMNGImage(const ImageInfo *image_info,ExceptionInfo *exception) if (image == (Image *) NULL) { - if (IsImageObject(previous) != MagickFalse) - { - (void) DestroyImageList(previous); - (void) CloseBlob(previous); - } + if (logging != MagickFalse) + (void) LogMagickEvent(CoderEvent,GetMagickModule(), + "exit ReadJNGImage() with error"); MngInfoFreeStruct(mng_info,&have_mng_structure); return((Image *) NULL);