diff --git a/Userland/Libraries/LibGfx/Font/OpenType/Font.cpp b/Userland/Libraries/LibGfx/Font/OpenType/Font.cpp index 8095721ba3..eb5dbf44e6 100644 --- a/Userland/Libraries/LibGfx/Font/OpenType/Font.cpp +++ b/Userland/Libraries/LibGfx/Font/OpenType/Font.cpp @@ -517,6 +517,9 @@ ErrorOr> Font::try_load_from_offset(ReadonlyBytes buffer, u3 if (!platform.has_value()) return Error::from_string_literal("Invalid Platform ID"); + /* NOTE: The encoding records are sorted first by platform ID, then by encoding ID. + This means that the Windows platform will take precedence over Macintosh, which is + usually what we want here. */ if (platform.value() == Cmap::Subtable::Platform::Windows) { if (subtable.encoding_id() == (u16)Cmap::Subtable::WindowsEncoding::UnicodeFullRepertoire) { cmap.set_active_index(i); @@ -528,7 +531,6 @@ ErrorOr> Font::try_load_from_offset(ReadonlyBytes buffer, u3 } } else if (platform.value() == Cmap::Subtable::Platform::Macintosh) { cmap.set_active_index(i); - break; } }