From: Cristy Date: Sun, 23 Dec 2018 01:12:17 +0000 (-0500) Subject: https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=12160 X-Git-Tag: 7.0.8-20~4 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=e403976ace25b0eb5c7359ab7dfb66f11d81ebe4;p=imagemagick https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=12160 --- diff --git a/coders/cube.c b/coders/cube.c index d0a8fef4e..aa119bc48 100644 --- a/coders/cube.c +++ b/coders/cube.c @@ -176,11 +176,17 @@ static Image *ReadCUBEImage(const ImageInfo *image_info, GetNextToken(q,&q,MagickPathExtent,value); cube_level=(size_t) StringToLong(value); if ((cube_level < 2) || (cube_level > 65536)) - ThrowReaderException(CorruptImageError,"ImproperImageHeader"); + { + buffer=DestroyString(buffer); + ThrowReaderException(CorruptImageError,"ImproperImageHeader"); + } cube_info=AcquireVirtualMemory(cube_level*cube_level,cube_level* sizeof(*cube)); if (cube_info == (MemoryInfo *) NULL) - ThrowReaderException(ResourceLimitError,"MemoryAllocationFailed"); + { + buffer=DestroyString(buffer); + ThrowReaderException(ResourceLimitError,"MemoryAllocationFailed"); + } cube=(CubePixel *) GetVirtualMemoryBlob(cube_info); (void) memset(cube,0,cube_level*cube_level*cube_level*sizeof(*cube)); }