[PATCH 5/6] usp10: Return the logical offset in GPOS_apply_lookup().
Henri Verbeet
hverbeet at codeweavers.com
Sun Feb 19 12:02:33 CST 2017
Signed-off-by: Henri Verbeet <hverbeet at codeweavers.com>
---
dlls/usp10/opentype.c | 8 ++++----
dlls/usp10/shape.c | 3 ++-
2 files changed, 6 insertions(+), 5 deletions(-)
diff --git a/dlls/usp10/opentype.c b/dlls/usp10/opentype.c
index 0cf474d..e3aaf16 100644
--- a/dlls/usp10/opentype.c
+++ b/dlls/usp10/opentype.c
@@ -2349,7 +2349,7 @@ static INT GPOS_apply_lookup(ScriptCache *psc, LPOUTLINETEXTMETRICW lpotm, LPLOG
GPOS_convert_design_units_to_device(lpotm, lplogfont, advance[1].x, advance[1].y, &devX, &devY);
piAdvance[glyph_index + write_dir] += round(devX);
}
- return glyph_index + index_offset;
+ return index_offset;
}
case GPOS_LOOKUP_ATTACH_CURSIVE:
@@ -2417,17 +2417,17 @@ static INT GPOS_apply_lookup(ScriptCache *psc, LPOUTLINETEXTMETRICW lpotm, LPLOG
}
case GPOS_LOOKUP_POSITION_CONTEXT:
- return glyph_index + GPOS_apply_ContextPos(psc, lpotm, lplogfont, analysis, piAdvance,
+ return GPOS_apply_ContextPos(psc, lpotm, lplogfont, analysis, piAdvance,
lookup, look, glyphs, glyph_index, glyph_count, ppem, pGoffset);
case GPOS_LOOKUP_POSITION_CONTEXT_CHAINED:
- return glyph_index + GPOS_apply_ChainContextPos(psc, lpotm, lplogfont, analysis, piAdvance,
+ return GPOS_apply_ChainContextPos(psc, lpotm, lplogfont, analysis, piAdvance,
lookup, look, glyphs, glyph_index, glyph_count, ppem, pGoffset);
default:
FIXME("Unhandled GPOS lookup type %#x.\n", type);
}
- return glyph_index+1;
+ return 1;
}
INT OpenType_apply_GPOS_lookup(ScriptCache *psc, LPOUTLINETEXTMETRICW lpotm, LPLOGFONTW lplogfont, const SCRIPT_ANALYSIS *analysis, INT* piAdvance, INT lookup_index, const WORD *glyphs, INT glyph_index, INT glyph_count, GOFFSET *pGoffset)
diff --git a/dlls/usp10/shape.c b/dlls/usp10/shape.c
index bf333b2..9549d9f 100644
--- a/dlls/usp10/shape.c
+++ b/dlls/usp10/shape.c
@@ -889,7 +889,8 @@ static VOID GPOS_apply_feature(ScriptCache *psc, LPOUTLINETEXTMETRICW lpotm, LPL
{
int j;
for (j = 0; j < glyph_count; )
- j = OpenType_apply_GPOS_lookup(psc, lpotm, lplogfont, analysis, piAdvance, feature->lookups[i], glyphs, j, glyph_count, pGoffset);
+ j += OpenType_apply_GPOS_lookup(psc, lpotm, lplogfont, analysis, piAdvance,
+ feature->lookups[i], glyphs, j, glyph_count, pGoffset);
}
}
--
2.1.4
More information about the wine-patches
mailing list