From 741993e0b15b4df86d76fa8df5055bd764c42c71 Mon Sep 17 00:00:00 2001 From: Owen Taylor Date: Sun, 29 Sep 2002 19:06:58 +0000 Subject: [PATCH] ligatures can be also used in MarkBasePos lookups. (2001-03-17 Werner Sun Sep 29 14:55:36 2002 Owen Taylor * pango/opentype/ftxgpos.c: ligatures can be also used in MarkBasePos lookups. (2001-03-17 Werner Lemberg) --- src/ftxgpos.c | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/src/ftxgpos.c b/src/ftxgpos.c index c51a6d1f4..d611d7cb8 100644 --- a/src/ftxgpos.c +++ b/src/ftxgpos.c @@ -1941,7 +1941,7 @@ /* 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 @@ -2343,7 +2343,7 @@ 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; @@ -2362,8 +2362,11 @@ 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; @@ -2751,7 +2754,7 @@ 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; @@ -2770,8 +2773,12 @@ 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;