]> granicus.if.org Git - imagemagick/commitdiff
https://oss-fuzz.com/v2/testcase-detail/4851335628324864?noredirect=1
authorCristy <urban-warrior@imagemagick.org>
Mon, 26 Mar 2018 23:28:06 +0000 (19:28 -0400)
committerCristy <urban-warrior@imagemagick.org>
Mon, 26 Mar 2018 23:28:06 +0000 (19:28 -0400)
coders/heic.c

index ee839c1b1a5cb4ac8300e0f01cf01f973490dcbc..7e0f7cc0cd89547f8ec22925be0444cf2a40a762 100644 (file)
@@ -450,6 +450,9 @@ static MagickBooleanType ParseIinfAtom(Image *image, DataBuffer *db,
   ctx->idsCount = count;
   if (ctx->itemInfo != (HEICItemInfo *) NULL)
     ctx->itemInfo=(HEICItemInfo *) RelinquishMagickMemory(ctx->itemInfo);
+  if (DBGetSize(db) < (8*count))
+    ThrowBinaryException(CorruptImageError,"InsufficientImageDataInFile",
+      image->filename);
   ctx->itemInfo = (HEICItemInfo *)AcquireMagickMemory(sizeof(HEICItemInfo)*(count+1));
   if (ctx->itemInfo == (HEICItemInfo *) NULL)
     ThrowBinaryException(ResourceLimitError,"MemoryAllocationFailed",