[subset] Add special case handling of bit 57 in os2 ulUnicodeRange.
This commit is contained in:
parent
ddc4f2b9fc
commit
074b5a29a1
|
@ -90,6 +90,13 @@ struct os2
|
||||||
unsigned int mask = 1 << bit_in_block;
|
unsigned int mask = 1 << bit_in_block;
|
||||||
ulUnicodeRange[block].set (ulUnicodeRange[block] | mask);
|
ulUnicodeRange[block].set (ulUnicodeRange[block] | mask);
|
||||||
}
|
}
|
||||||
|
if (cp >= 0x10000 && cp <= 0x110000)
|
||||||
|
{
|
||||||
|
/* the spec says that bit 57 ("Non Plane 0") implies that there's
|
||||||
|
at least one codepoint beyond the BMP; so I also include all
|
||||||
|
the non-BMP codepoints here */
|
||||||
|
ulUnicodeRange[2].set (ulUnicodeRange[2] | (1 << 25));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -31,9 +31,6 @@
|
||||||
void
|
void
|
||||||
test (hb_codepoint_t cp, int bit)
|
test (hb_codepoint_t cp, int bit)
|
||||||
{
|
{
|
||||||
// TODO:
|
|
||||||
// Note: * Setting bit 57 implies that there is at least one codepoint beyond the Basic
|
|
||||||
// Multilingual Plane that is supported by this font. (See fontTools impl.)
|
|
||||||
if (OT::hb_get_unicode_range_bit (cp) != bit)
|
if (OT::hb_get_unicode_range_bit (cp) != bit)
|
||||||
{
|
{
|
||||||
fprintf (stderr, "got incorrect bit (%d) for cp 0x%X. Should have been %d.",
|
fprintf (stderr, "got incorrect bit (%d) for cp 0x%X. Should have been %d.",
|
||||||
|
|
Loading…
Reference in New Issue