From f685e1e0afdea91da020ada3fade22621dd459eb Mon Sep 17 00:00:00 2001 From: Cristy Date: Fri, 17 Nov 2017 07:35:23 -0500 Subject: [PATCH] https://github.com/ImageMagick/ImageMagick/issues/867 --- coders/dds.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/coders/dds.c b/coders/dds.c index f4672bd84..278e3d83b 100644 --- a/coders/dds.c +++ b/coders/dds.c @@ -1865,8 +1865,6 @@ static MagickBooleanType ReadDDSInfo(Image *image, DDSInfo *dds_info) dds_info->pitchOrLinearSize = ReadBlobLSBLong(image); dds_info->depth = ReadBlobLSBLong(image); dds_info->mipmapcount = ReadBlobLSBLong(image); - if (dds_info->mipmapcount > GetBlobSize(image)) - return MagickFalse; (void) SeekBlob(image, 44, SEEK_CUR); /* reserved region of 11 DWORDs */ @@ -1972,6 +1970,8 @@ static MagickBooleanType ReadMipmaps(const ImageInfo *image_info,Image *image, w=DIV2(w); h=DIV2(h); + if ((w == 1) && (h == 1)) + break; } } return(status); @@ -2555,6 +2555,8 @@ static MagickBooleanType SkipDXTMipmaps(Image *image,DDSInfo *dds_info, break; w=DIV2(w); h=DIV2(h); + if ((w == 1) && (h == 1)) + break; } } return(MagickTrue); @@ -2602,6 +2604,8 @@ static MagickBooleanType SkipRGBMipmaps(Image *image,DDSInfo *dds_info, break; w=DIV2(w); h=DIV2(h); + if ((w == 1) && (h == 1)) + break; } } return(MagickTrue); -- 2.50.1