diff --git a/Userland/Libraries/LibGfx/Font/OpenType/Tables.cpp b/Userland/Libraries/LibGfx/Font/OpenType/Tables.cpp index 89e2351bc2..cf97b154fa 100644 --- a/Userland/Libraries/LibGfx/Font/OpenType/Tables.cpp +++ b/Userland/Libraries/LibGfx/Font/OpenType/Tables.cpp @@ -87,32 +87,33 @@ ErrorOr Hhea::from_slice(ReadonlyBytes slice) if (slice.size() < sizeof(HorizontalHeaderTable)) return Error::from_string_literal("Could not load Hhea: Not enough data"); - return Hhea(slice); + auto const& horizontal_header_table = *bit_cast(slice.data()); + return Hhea(horizontal_header_table); } i16 Hhea::ascender() const { - return header().ascender; + return m_data.ascender; } i16 Hhea::descender() const { - return header().descender; + return m_data.descender; } i16 Hhea::line_gap() const { - return header().line_gap; + return m_data.line_gap; } u16 Hhea::advance_width_max() const { - return header().advance_width_max; + return m_data.advance_width_max; } u16 Hhea::number_of_h_metrics() const { - return header().number_of_h_metrics; + return m_data.number_of_h_metrics; } ErrorOr Maxp::from_slice(ReadonlyBytes slice) diff --git a/Userland/Libraries/LibGfx/Font/OpenType/Tables.h b/Userland/Libraries/LibGfx/Font/OpenType/Tables.h index bf5073b4a2..69278bdd83 100644 --- a/Userland/Libraries/LibGfx/Font/OpenType/Tables.h +++ b/Userland/Libraries/LibGfx/Font/OpenType/Tables.h @@ -159,14 +159,12 @@ private: }; static_assert(AssertSize()); - HorizontalHeaderTable const& header() const { return *bit_cast(m_slice.data()); } - - Hhea(ReadonlyBytes slice) - : m_slice(slice) + Hhea(HorizontalHeaderTable const& horizontal_header_table) + : m_data(horizontal_header_table) { } - ReadonlyBytes m_slice; + HorizontalHeaderTable const& m_data; }; // https://learn.microsoft.com/en-us/typography/opentype/spec/maxp