]> granicus.if.org Git - imagemagick/commitdiff
https://github.com/ImageMagick/ImageMagick/issues/705
authorCristy <urban-warrior@imagemagick.org>
Tue, 29 Aug 2017 18:57:16 +0000 (14:57 -0400)
committerCristy <urban-warrior@imagemagick.org>
Tue, 29 Aug 2017 18:57:16 +0000 (14:57 -0400)
coders/thumbnail.c

index e129ff04e1c195ef6a5b8b4e7223ef30457785d0..d61166fde89d798add3203d4d60e5990a2e0ec52 100644 (file)
@@ -190,11 +190,11 @@ static MagickBooleanType WriteTHUMBNAILImage(const ImageInfo *image_info,
   if (property == (const char *) NULL)
     ThrowWriterException(CoderError,"ImageDoesNotHaveAThumbnail");
   length=(size_t) StringToLong(property);
+  if (((offset+length) < 2) || ((offset+length) > GetStringInfoLength(profile)))
+    ThrowWriterException(CoderError,"ImageDoesNotHaveAThumbnail");
   (void) ResetMagickMemory(magick,0,sizeof(magick));
   for (i=0; i < (ssize_t) length; i++)
   {
-    if ((offset+i) >= GetStringInfoLength(profile))
-      break;
     magick[0]=magick[1];
     magick[1]=magick[2];
     magick[2]=GetStringInfoDatum(profile)[offset+i];