Huw Davies : usp10: Handle an offset of the first glyph.
Alexandre Julliard
julliard at winehq.org
Fri Jan 11 13:46:58 CST 2013
Module: wine
Branch: master
Commit: f5ab208ce81a177e50607064c0b2acf0432fae32
URL: http://source.winehq.org/git/wine.git/?a=commit;h=f5ab208ce81a177e50607064c0b2acf0432fae32
Author: Huw Davies <huw at codeweavers.com>
Date: Fri Jan 11 11:09:20 2013 +0000
usp10: Handle an offset of the first glyph.
---
dlls/usp10/usp10.c | 18 +++++++++++++-----
1 files changed, 13 insertions(+), 5 deletions(-)
diff --git a/dlls/usp10/usp10.c b/dlls/usp10/usp10.c
index b77c251..850c486 100644
--- a/dlls/usp10/usp10.c
+++ b/dlls/usp10/usp10.c
@@ -3275,12 +3275,20 @@ HRESULT WINAPI ScriptTextOut(const HDC hdc, SCRIPT_CACHE *psc, int x, int y, UIN
lpDx[i * 2] = piAdvance[i];
lpDx[i * 2 + 1] = 0;
- if (pGoffset && i > 0)
+ if (pGoffset)
{
- lpDx[(i - 1) * 2] += pGoffset[i].du;
- lpDx[(i - 1) * 2 + 1] += pGoffset[i].dv;
- lpDx[i * 2] -= pGoffset[i].du;
- lpDx[i * 2 + 1] -= pGoffset[i].dv;
+ if (i == 0)
+ {
+ x += pGoffset[i].du;
+ y += pGoffset[i].dv;
+ }
+ else
+ {
+ lpDx[(i - 1) * 2] += pGoffset[i].du;
+ lpDx[(i - 1) * 2 + 1] += pGoffset[i].dv;
+ }
+ lpDx[i * 2] -= pGoffset[i].du;
+ lpDx[i * 2 + 1] -= pGoffset[i].dv;
}
}
More information about the wine-cvs
mailing list