Mon Aug 25 10:17:21 2003 Owen Taylor * pango/opentype/ftxgsub.c (Lookup_ChainContextSubst3) * pango/opentype/ftxgpos.c (Lookup_ChainContextPos3): Fix problems where the coverage wasn't being checked for the first input glyph. (#118639, Kailash C. Chowksey) Index: pango/opentype/ftxgpos.c =================================================================== RCS file: /cvs/gnome/pango/pango/opentype/ftxgpos.c,v retrieving revision 1.7.2.10 diff -u -p -r1.7.2.10 ftxgpos.c --- pango/opentype/ftxgpos.c 27 Jul 2003 02:40:17 -0000 1.7.2.10 +++ pango/opentype/ftxgpos.c 25 Aug 2003 14:25:30 -0000 @@ -5646,11 +5646,10 @@ s_in = &in->string[curr_pos]; ic = ccpf3->InputCoverage; - /* Start at 1 because [0] is implied */ - - for ( i = 1, j = 1; i < igc; i++, j++ ) + for ( i = 0, j = 0; i < igc; i++, j++ ) { - while ( CHECK_Property( gdef, s_in[j], flags, &property ) ) + /* We already called CHECK_Property for s_in[0] */ + while ( j > 0 && CHECK_Property( gdef, s_in[j], flags, &property ) ) { if ( error && error != TTO_Err_Not_Covered ) return error; Index: pango/opentype/ftxgsub.c =================================================================== RCS file: /cvs/gnome/pango/pango/opentype/ftxgsub.c,v retrieving revision 1.5.2.10 diff -u -p -r1.5.2.10 ftxgsub.c --- pango/opentype/ftxgsub.c 29 Jul 2003 14:21:30 -0000 1.5.2.10 +++ pango/opentype/ftxgsub.c 25 Aug 2003 14:25:30 -0000 @@ -3811,11 +3811,10 @@ s_in = &in->string[curr_pos]; ic = ccsf3->InputCoverage; - /* Start at 1 because [0] is implied */ - - for ( i = 1, j = 1; i < igc; i++, j++ ) + for ( i = 0, j = 0; i < igc; i++, j++ ) { - while ( CHECK_Property( gdef, s_in[j], flags, &property ) ) + /* We already called CHECK_Property for s_in[0] */ + while ( j > 0 && CHECK_Property( gdef, s_in[j], flags, &property ) ) { if ( error && error != TTO_Err_Not_Covered ) return error;