diff --git a/Userland/Libraries/LibGfx/ICC/BinaryFormat.h b/Userland/Libraries/LibGfx/ICC/BinaryFormat.h index f4a3bd3442..f78525412f 100644 --- a/Userland/Libraries/LibGfx/ICC/BinaryFormat.h +++ b/Userland/Libraries/LibGfx/ICC/BinaryFormat.h @@ -130,6 +130,16 @@ struct CLUTHeader { }; static_assert(AssertSize()); +// Table 49 — measurementType structure +struct MeasurementHeader { + BigEndian standard_observer; + XYZNumber tristimulus_value_for_measurement_backing; + BigEndian measurement_geometry; + BigEndian measurement_flare; + BigEndian standard_illuminant; +}; +static_assert(AssertSize()); + // ICC v4, 10.15 multiLocalizedUnicodeType struct MultiLocalizedUnicodeRawRecord { BigEndian language_code; diff --git a/Userland/Libraries/LibGfx/ICC/TagTypes.cpp b/Userland/Libraries/LibGfx/ICC/TagTypes.cpp index 57d64bbe45..f8fb83dc6e 100644 --- a/Userland/Libraries/LibGfx/ICC/TagTypes.cpp +++ b/Userland/Libraries/LibGfx/ICC/TagTypes.cpp @@ -551,16 +551,6 @@ ErrorOr> MeasurementTagData::from_bytes(Readon VERIFY(tag_type(bytes) == Type); TRY(check_reserved(bytes)); - // Table 49 — measurementType structure - struct MeasurementHeader { - BigEndian standard_observer; - XYZNumber tristimulus_value_for_measurement_backing; - BigEndian measurement_geometry; - BigEndian measurement_flare; - BigEndian standard_illuminant; - }; - static_assert(AssertSize()); - if (bytes.size() < 2 * sizeof(u32) + sizeof(MeasurementHeader)) return Error::from_string_literal("ICC::Profile: measurementTag has not enough data");