Hi,
While testing harfbuzz-ng with a huge font which has more than 64,000
glyphs, I encountered a strange result of hb-shape:
<uniAC00=0+970|gid-1389=0|uniB098=6+970|gid-1388=6>
As shown, minus GID numbers are printed on the screen; this of course
is not valid.
The problem seems to occur because of the valid range of deltaGlyphID
in hb-ot-layout-gsub-table.hh.
After having changed 67th line of hb-ot-layout-gsub-table.hh from
SHORT deltaGlyphID; /* Add to original GlyphID to get
to
USHORT deltaGlyphID; /* Add to original GlyphID to get
the problem disappeared and correct glyph names were printed instead
of minus GIDs.
I have no idea about whether USHORT typecast is good for this case.
Anyway, changing to USHORT has solved an issue which has nagged me for months.
Best,
--
Dohyun Kim
College of Law, Dongguk University
Seoul, Republic of Korea