[GSUB] More ligature/component fixing
authorBehdad Esfahbod <behdad@behdad.org>
Fri, 6 Nov 2009 22:23:31 +0000 (17:23 -0500)
committerBehdad Esfahbod <behdad@behdad.org>
Fri, 6 Nov 2009 22:23:31 +0000 (17:23 -0500)
We can only reuse the ligid if it belongs to a previous ligature, not a
component!

src/hb-ot-layout-gsub-private.hh

index fd161c0..d0cec7b 100644 (file)
@@ -388,8 +388,8 @@ struct Ligature
         glyphs and the ligature already has an ID. */
       _hb_buffer_add_output_glyphs_be16 (buffer, i,
                                         1, (const uint16_t *) &ligGlyph,
-                                        0xFFFF,
-                                        IN_LIGID (buffer->in_pos) ?
+                                        0,
+                                        IN_LIGID (buffer->in_pos) && !IN_COMPONENT (buffer->in_pos) ?
                                         0xFFFF : _hb_buffer_allocate_lig_id (buffer));
     else
     {