ligatures can be also used in MarkBasePos lookups. (2001-03-17 Werner
authorOwen Taylor <otaylor@redhat.com>
Sun, 29 Sep 2002 19:06:58 +0000 (19:06 +0000)
committerOwen Taylor <otaylor@src.gnome.org>
Sun, 29 Sep 2002 19:06:58 +0000 (19:06 +0000)
Sun Sep 29 14:55:36 2002  Owen Taylor  <otaylor@redhat.com>

        * pango/opentype/ftxgpos.c: ligatures can be also used in
        MarkBasePos lookups. (2001-03-17  Werner Lemberg)

src/ftxgpos.c

index c51a6d1..d611d7c 100644 (file)
 
     /* Now comes the messiest part of the whole OpenType
        specification.  At first glance, cursive connections seem easy
-       to understand, but there are pitfalls!  The reason is, that
+       to understand, but there are pitfalls!  The reason is that
        the specs don't mention how to compute the advance values
        resp. glyph offsets.  I was told it would be an omission, to
        be fixed in the next OpenType version...  Again many thanks to
     if ( error )
       return error;
 
-    /* now we search backwards for a base glyph */
+    /* now we search backwards for a non-mark glyph */
 
     i = 1;
     j = in->pos - 1;
       j--;
     }
 
+    /* The following assertion is too strong -- at least for mangal.ttf. */
+#if 0
     if ( property != TTO_BASE_GLYPH )
       return TTO_Err_Not_Covered;
+#endif
 
     if ( i > in->pos )
       return TTO_Err_Not_Covered;
     if ( error )
       return error;
 
-    /* now we search backwards for a ligature */
+    /* now we search backwards for a non-mark glyph */
 
     i = 1;
     j = in->pos - 1;
       j--;
     }
 
+    /* Similar to Lookup_MarkBasePos(), I suspect that this assertion is
+       too strong, thus it is commented out.                             */
+#if 0
     if ( property != TTO_LIGATURE )
       return TTO_Err_Not_Covered;
+#endif
 
     if ( i > in->pos )
       return TTO_Err_Not_Covered;