Module: wine Branch: master Commit: 310a3b1d11bd175ee1182b0e37812fd140a7b6b4 URL: http://source.winehq.org/git/wine.git/?a=commit;h=310a3b1d11bd175ee1182b0e37...
Author: Akihiro Sagawa sagawa.aki@gmail.com Date: Fri Sep 20 00:57:48 2013 +0900
winex11.drv: Fix empty glyph handling.
---
dlls/winex11.drv/xrender.c | 5 ++++- 1 files changed, 4 insertions(+), 1 deletions(-)
diff --git a/dlls/winex11.drv/xrender.c b/dlls/winex11.drv/xrender.c index 671f67a..ca2d3da 100644 --- a/dlls/winex11.drv/xrender.c +++ b/dlls/winex11.drv/xrender.c @@ -1129,7 +1129,10 @@ static void UploadGlyph(struct xrender_physdev *physDev, UINT glyph, enum glyph_
buf = HeapAlloc(GetProcessHeap(), HEAP_ZERO_MEMORY, buflen); - GetGlyphOutlineW(physDev->dev.hdc, glyph, ggo_format, &gm, buflen, buf, &identity); + if (buflen) + GetGlyphOutlineW(physDev->dev.hdc, glyph, ggo_format, &gm, buflen, buf, &identity); + else + gm.gmBlackBoxX = gm.gmBlackBoxY = 0; /* empty glyph */ formatEntry->realized[glyph] = TRUE;
TRACE("buflen = %d. Got metrics: %dx%d adv=%d,%d origin=%d,%d\n",