ThrowReaderException(CorruptImageError,"ImproperImageHeader");
image->columns=width;
image->rows=height;
- for (depth=1; (GetQuantumRange(depth)+1) < max_value; depth++)
- if (depth >= 64)
- break;
+ if ((max_value == 0) || (max_value > 4294967295))
+ ThrowReaderException(CorruptImageError,"ImproperImageHeader");
+ for (depth=1; (GetQuantumRange(depth)+1) < max_value; depth++) ;
image->depth=depth;
status=SetImageExtent(image,image->columns,image->rows,exception);
if (status == MagickFalse)