File ImageMagick-CVE-2017-14249.patch of Package ImageMagick.29977
diff --git a/coders/mpc.c b/coders/mpc.c
index c8e7b4b4e4..3047d6652a 100644
--- a/coders/mpc.c
+++ b/coders/mpc.c
@@ -943,12 +943,6 @@ static Image *ReadMPCImage(const ImageInfo *image_info,ExceptionInfo *exception)
colormap=(unsigned char *) RelinquishMagickMemory(colormap);
}
}
- if (EOFBlob(image) != MagickFalse)
- {
- ThrowFileException(exception,CorruptImageError,"UnexpectedEndOfFile",
- image->filename);
- break;
- }
if ((image_info->ping != MagickFalse) && (image_info->number_scenes != 0))
if (image->scene >= (image_info->scene+image_info->number_scenes-1))
break;
@@ -961,6 +955,12 @@ static Image *ReadMPCImage(const ImageInfo *image_info,ExceptionInfo *exception)
status=PersistPixelCache(image,cache_filename,MagickTrue,&offset,exception);
if (status == MagickFalse)
ThrowReaderException(CacheError,"UnableToPersistPixelCache");
+ if (EOFBlob(image) != MagickFalse)
+ {
+ ThrowFileException(exception,CorruptImageError,"UnexpectedEndOfFile",
+ image->filename);
+ break;
+ }
/*
Proceed to next image.
*/