columns,
rows;
- size_t
- number_pixels;
-
/*
Convert tiled TIFF image to DirectClass MIFF image.
*/
ThrowReaderException(CoderError,"ImageIsNotTiled");
}
(void) SetImageStorageClass(image,DirectClass,exception);
- number_pixels=columns*rows;
- tile_pixels=(uint32 *) AcquireQuantumMemory(number_pixels,
- sizeof(*tile_pixels));
+ number_pixels=(MagickSizeType) columns*rows;
+ if ((number_pixels*sizeof(uint32)) != (MagickSizeType) ((size_t)
+ (number_pixels*sizeof(uint32))))
+ {
+ TIFFClose(tiff);
+ ThrowReaderException(ResourceLimitError,"MemoryAllocationFailed");
+ }
+ tile_pixels=(uint32 *) AcquireQuantumMemory(columns,
+ rows*sizeof(*tile_pixels));
if (tile_pixels == (uint32 *) NULL)
{
TIFFClose(tiff);