Re: Syriac Shaper Bugfixes



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



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]