On Wed, 2005-06-22 at 13:13 -0700, Emil Soleyman-Zomalan wrote: > Hi, > > I have synced with the Arabic shaper to pick up some of the bugfixes > and/or changes and applied them to the Syriac codebase. Please apply > these patches at your earliest convenience. > > http://www.nishra.com/patches/syriac-fc.c.patch > http://www.nishra.com/patches/syriac-ot.c.patch > http://www.nishra.com/patches/syriac-ot.h.patch Actually, most of these differences I *fixed* formatting, style problems, or plain old silliness as compared to the Arabic shaper. (They perhaps should be merged back the other way) I've applied the differences that I think are actual fixes from the Arabic shaper now. Patch attached. Thanks! Owen
Index: ChangeLog =================================================================== RCS file: /cvs/gnome/pango/ChangeLog,v retrieving revision 1.1134 diff -u -p -r1.1134 ChangeLog --- ChangeLog 21 Jul 2005 18:15:34 -0000 1.1134 +++ ChangeLog 21 Jul 2005 18:45:49 -0000 @@ -1,5 +1,19 @@ 2005-07-21 Owen Taylor <otaylor redhat com> + Merges of fixes from Arabic module (#308813, Emil Soleyman-Zomalan) + + * modules/syriac/syriac-fc.c (syriac_engine_shape): Fix + bug where cluster was getting set to 0 for non-spacing + marks rather than to the cluster of the base character. + (#149126, Behdad Esfahbod) + + * modules/syriac/syriac-fc.c (syriac_engine_shape): Turn + on zero-width-marks setting. [Not clear that this is + needed here, since it is mostly set in the Arabic engine + to handle legacy fonts, but it shouldn't hurt] + +2005-07-21 Owen Taylor <otaylor redhat com> + Fix up places where there is missing or incomplete Copyright and License information (Reported by William N. Ray) Index: modules/syriac/syriac-fc.c =================================================================== RCS file: /cvs/gnome/pango/modules/syriac/syriac-fc.c,v retrieving revision 1.1 diff -u -p -r1.1 syriac-fc.c --- modules/syriac/syriac-fc.c 22 Nov 2004 20:31:11 -0000 1.1 +++ modules/syriac/syriac-fc.c 21 Jul 2005 18:45:49 -0000 @@ -256,6 +256,7 @@ syriac_engine_shape (PangoEngineShape *e PangoOTRuleset *ruleset; PangoOTBuffer *buffer; PangoFcFont *fc_font; + int cluster = 0; g_return_if_fail (font != NULL); g_return_if_fail (text != NULL); @@ -276,6 +277,7 @@ syriac_engine_shape (PangoEngineShape *e buffer = pango_ot_buffer_new (fc_font); pango_ot_buffer_set_rtl (buffer, analysis->level % 2 != 0); + pango_ot_buffer_set_zero_width_marks (buffer, TRUE); wcs = g_utf8_to_ucs4_fast (text, length, &n_chars); properties = g_new0 (gulong, n_chars); @@ -288,7 +290,6 @@ syriac_engine_shape (PangoEngineShape *e gunichar wc; gunichar mirrored_ch; PangoGlyph index; - int cluster = 0; wc = g_utf8_get_char (p);
Attachment:
signature.asc
Description: This is a digitally signed message part