1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-25 23:07:35 +00:00

LibGfx/TIFF: Reject images that declare a sample with abnormal bit depth

Anything with a bit depth of zero or greater than 32 is outside our
working range, so let's reject them.
This commit is contained in:
Lucas CHOLLET 2023-12-30 00:19:30 -05:00 committed by Andrew Kaster
parent ba84af7c22
commit 4e09ee1f2f

View file

@ -47,6 +47,9 @@ public:
if (m_metadata.strip_offsets()->size() != m_metadata.strip_byte_counts()->size())
return Error::from_string_literal("TIFFImageDecoderPlugin: StripsOffset and StripByteCount have different sizes");
if (any_of(*m_metadata.bits_per_sample(), [](auto bit_depth) { return bit_depth == 0 || bit_depth > 32; }))
return Error::from_string_literal("TIFFImageDecoderPlugin: Invalid value in BitsPerSample");
return {};
}