[HarfBuzz] isLetter function problems with indic characters
phunter at atex.com
Sun Sep 19 23:41:27 PDT 2010
I happened to come across the same issue
Seems to me that the return value for isLetter (and IsMark) is incorrectly determined
static HB_Bool isLetter(HB_UChar16 ucs)
const int test = FLAG(HB_Letter_Uppercase) |
return FLAG(HB_GetUnicodeCharCategory(ucs)) & test;
The return value is a HB_BOOL (which is a byte) whereas the computed mask value for everything other than HB_Letter_Other is greater than 256.
A more appropriate return value would be
return (FLAG(HB_GetUnicodeCharCategory(ucs)) & test) != 0;
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the HarfBuzz