Module: wine Branch: master Commit: 63490ce03837b467e33457469ab55a26f9b4e120 URL: http://source.winehq.org/git/wine.git/?a=commit;h=63490ce03837b467e33457469a...
Author: Aric Stewart aric@codeweavers.com Date: Thu Oct 6 08:35:59 2011 -0500
usp10: Correct ScriptStringGetLogicalWidths to be based on char not glyph.
---
dlls/usp10/usp10.c | 7 +++++-- 1 files changed, 5 insertions(+), 2 deletions(-)
diff --git a/dlls/usp10/usp10.c b/dlls/usp10/usp10.c index b8eee22..14f523f 100644 --- a/dlls/usp10/usp10.c +++ b/dlls/usp10/usp10.c @@ -2287,9 +2287,12 @@ HRESULT WINAPI ScriptStringGetLogicalWidths(SCRIPT_STRING_ANALYSIS ssa, int *piD
for (i = 0; i < analysis->numItems; i++) { - for (j = 0; j < analysis->glyphs[i].numGlyphs; j++) + int cChar = analysis->pItem[i+1].iCharPos - analysis->pItem[i].iCharPos; + for (j = 0; j < cChar; j++) { - piDx[next] = analysis->glyphs[i].piAdvance[j]; + + int glyph = analysis->glyphs[i].pwLogClust[j]; + piDx[next] = analysis->glyphs[i].piAdvance[glyph]; next++; } }