summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorOwen Taylor <otaylor@redhat.com>2004-07-26 19:20:17 +0000
committerOwen Taylor <otaylor@src.gnome.org>2004-07-26 19:20:17 +0000
commite3de3deafe60d6b82095867933771f00c61bcdf4 (patch)
treee7fe86a6336da9cdf61aaf9c5e0272175d5b6ccb
parentb84172698b0ff618d43b25f975e46c6eb2215f79 (diff)
downloadpango-e3de3deafe60d6b82095867933771f00c61bcdf4.tar.gz
Match backtrack context against the output glyphs not the input glyphs
Mon Jul 26 15:16:07 2004 Owen Taylor <otaylor@redhat.com> * pango/opentype/ftxgsub.c (Lookup_ChainContextSubst[123]): Match backtrack context against the output glyphs not the input glyphs (#145174, Aamir Wali)
-rw-r--r--ChangeLog6
-rw-r--r--ChangeLog.pre-1-106
-rw-r--r--ChangeLog.pre-1-66
-rw-r--r--ChangeLog.pre-1-86
-rw-r--r--pango/opentype/ftxgsub.c24
5 files changed, 36 insertions, 12 deletions
diff --git a/ChangeLog b/ChangeLog
index 3d5271ad..3e70ef3b 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+Mon Jul 26 15:16:07 2004 Owen Taylor <otaylor@redhat.com>
+
+ * pango/opentype/ftxgsub.c (Lookup_ChainContextSubst[123]):
+ Match backtrack context against the output glyphs not
+ the input glyphs (#145174, Aamir Wali)
+
Mon Jul 19 16:29:45 2004 Owen Taylor <otaylor@redhat.com>
* pango/opentype/ftxgsub.c pango/opentype/ftxgpos.c:
diff --git a/ChangeLog.pre-1-10 b/ChangeLog.pre-1-10
index 3d5271ad..3e70ef3b 100644
--- a/ChangeLog.pre-1-10
+++ b/ChangeLog.pre-1-10
@@ -1,3 +1,9 @@
+Mon Jul 26 15:16:07 2004 Owen Taylor <otaylor@redhat.com>
+
+ * pango/opentype/ftxgsub.c (Lookup_ChainContextSubst[123]):
+ Match backtrack context against the output glyphs not
+ the input glyphs (#145174, Aamir Wali)
+
Mon Jul 19 16:29:45 2004 Owen Taylor <otaylor@redhat.com>
* pango/opentype/ftxgsub.c pango/opentype/ftxgpos.c:
diff --git a/ChangeLog.pre-1-6 b/ChangeLog.pre-1-6
index 3d5271ad..3e70ef3b 100644
--- a/ChangeLog.pre-1-6
+++ b/ChangeLog.pre-1-6
@@ -1,3 +1,9 @@
+Mon Jul 26 15:16:07 2004 Owen Taylor <otaylor@redhat.com>
+
+ * pango/opentype/ftxgsub.c (Lookup_ChainContextSubst[123]):
+ Match backtrack context against the output glyphs not
+ the input glyphs (#145174, Aamir Wali)
+
Mon Jul 19 16:29:45 2004 Owen Taylor <otaylor@redhat.com>
* pango/opentype/ftxgsub.c pango/opentype/ftxgpos.c:
diff --git a/ChangeLog.pre-1-8 b/ChangeLog.pre-1-8
index 3d5271ad..3e70ef3b 100644
--- a/ChangeLog.pre-1-8
+++ b/ChangeLog.pre-1-8
@@ -1,3 +1,9 @@
+Mon Jul 26 15:16:07 2004 Owen Taylor <otaylor@redhat.com>
+
+ * pango/opentype/ftxgsub.c (Lookup_ChainContextSubst[123]):
+ Match backtrack context against the output glyphs not
+ the input glyphs (#145174, Aamir Wali)
+
Mon Jul 19 16:29:45 2004 Owen Taylor <otaylor@redhat.com>
* pango/opentype/ftxgsub.c pango/opentype/ftxgpos.c:
diff --git a/pango/opentype/ftxgsub.c b/pango/opentype/ftxgsub.c
index 4ca70d13..cb7bf7d1 100644
--- a/pango/opentype/ftxgsub.c
+++ b/pango/opentype/ftxgsub.c
@@ -3205,7 +3205,7 @@
/* check whether context is too long; it is a first guess only */
- if ( bgc > buffer->in_pos || buffer->in_pos + igc + lgc > buffer->in_length )
+ if ( bgc > buffer->out_pos || buffer->in_pos + igc + lgc > buffer->in_length )
goto next_chainsubrule;
if ( bgc )
@@ -3213,9 +3213,9 @@
/* since we don't know in advance the number of glyphs to inspect,
we search backwards for matches in the backtrack glyph array */
- for ( i = 0, j = buffer->in_pos - 1; i < bgc; i++, j-- )
+ for ( i = 0, j = buffer->out_pos - 1; i < bgc; i++, j-- )
{
- while ( CHECK_Property( gdef, IN_GLYPH( j ), flags, &property ) )
+ while ( CHECK_Property( gdef, OUT_GLYPH( j ), flags, &property ) )
{
if ( error && error != TTO_Err_Not_Covered )
return error;
@@ -3235,7 +3235,7 @@
Backtrack offsets - 3 2 1 0
Lookahead offsets - 0 1 2 3 */
- if ( IN_GLYPH( j ) != curr_csr.Backtrack[i] )
+ if ( OUT_GLYPH( j ) != curr_csr.Backtrack[i] )
goto next_chainsubrule;
}
}
@@ -3371,7 +3371,7 @@
/* check whether context is too long; it is a first guess only */
- if ( bgc > buffer->in_pos || buffer->in_pos + igc + lgc > buffer->in_length )
+ if ( bgc > buffer->out_pos || buffer->in_pos + igc + lgc > buffer->in_length )
goto next_chainsubclassrule;
if ( bgc )
@@ -3382,9 +3382,9 @@
bc = ccsr.Backtrack;
- for ( i = 0, j = buffer->in_pos - 1; i < bgc; i++, j-- )
+ for ( i = 0, j = buffer->out_pos - 1; i < bgc; i++, j-- )
{
- while ( CHECK_Property( gdef, IN_GLYPH( j ), flags, &property ) )
+ while ( CHECK_Property( gdef, OUT_GLYPH( j ), flags, &property ) )
{
if ( error && error != TTO_Err_Not_Covered )
goto End1;
@@ -3398,7 +3398,7 @@
{
/* Keeps us from having to do this for each rule */
- error = Get_Class( &ccsf2->BacktrackClassDef, IN_GLYPH( j ),
+ error = Get_Class( &ccsf2->BacktrackClassDef, OUT_GLYPH( j ),
&backtrack_classes[i], NULL );
if ( error && error != TTO_Err_Not_Covered )
goto End1;
@@ -3526,7 +3526,7 @@
/* check whether context is too long; it is a first guess only */
- if ( bgc > buffer->in_pos || buffer->in_pos + igc + lgc > buffer->in_length )
+ if ( bgc > buffer->out_pos || buffer->in_pos + igc + lgc > buffer->in_length )
return TTO_Err_Not_Covered;
if ( bgc )
@@ -3536,9 +3536,9 @@
bc = ccsf3->BacktrackCoverage;
- for ( i = 0, j = buffer->in_pos - 1; i < bgc; i++, j-- )
+ for ( i = 0, j = buffer->out_pos - 1; i < bgc; i++, j-- )
{
- while ( CHECK_Property( gdef, IN_GLYPH( j ), flags, &property ) )
+ while ( CHECK_Property( gdef, OUT_GLYPH( j ), flags, &property ) )
{
if ( error && error != TTO_Err_Not_Covered )
return error;
@@ -3548,7 +3548,7 @@
j--;
}
- error = Coverage_Index( &bc[i], IN_GLYPH( j ), &index );
+ error = Coverage_Index( &bc[i], OUT_GLYPH( j ), &index );
if ( error )
return error;
}