[subset] Add special case handling of bit 57 in os2 ulUnicodeRange.
diff --git a/src/hb-ot-os2-table.hh b/src/hb-ot-os2-table.hh
index 63e9726..7325e93 100644
--- a/src/hb-ot-os2-table.hh
+++ b/src/hb-ot-os2-table.hh
@@ -90,6 +90,13 @@
unsigned int mask = 1 << bit_in_block;
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));
+ }
}
}