[HarfBuzz] isLetter function problems with indic characters
Pravin Satpute
psatpute at redhat.com
Fri Sep 17 03:23:20 PDT 2010
Hi All,
I was working on bug
http://bugreports.qt.nokia.com/browse/QTBUG-13620, while debugging found
one major problem w.r.t isLetter function of qt
thought better to share with you all as well.
- init feature get applied only when character is not preceded by
any letter
- but in file harfbuzz-indic.cpp
if (item->item.pos == 0 ||
!(isLetter(item->string[item->item.pos-1]) ||
isMark(item->string[item->item.pos-1])))
properties[0] &= ~InitProperty;
- here isLetter function is returning false for valid indic letter
characters,
- this invalid data is coming from
src/corelib/tools/qunicodetables.cpp/src/corelib/tools/qunicodetables.cpp,
this
file is generated from unicode database
/* This file is autogenerated from the Unicode 5.0 database. Do not edit */
I saw this bug long time back in glibc also and fixed it there for
all indic characters, but hmm best way is to fix this in Unicode file
itself, or script used for generating database for isLetter should be
modify accordingly.
Regards,
Pravin S
More information about the HarfBuzz
mailing list