From: Rafal Harabien Date: Sun, 12 Feb 2012 11:02:00 +0000 (+0000) Subject: [WIN32K] X-Git-Tag: backups/c++-bringup@60583~500 X-Git-Url: https://git.reactos.org/?p=reactos.git;a=commitdiff_plain;h=65d63893a76daf232fb138bd1176b8f53c659039 [WIN32K] - Clip test vertically in ExtTextOut when ETO_CLIPPED is used svn path=/trunk/; revision=55558 --- diff --git a/reactos/subsystems/win32/win32k/objects/freetype.c b/reactos/subsystems/win32/win32k/objects/freetype.c index 4cab296de33..0d33f483cda 100644 --- a/reactos/subsystems/win32/win32k/objects/freetype.c +++ b/reactos/subsystems/win32/win32k/objects/freetype.c @@ -3495,8 +3495,7 @@ GreExtTextOutW( * brush. */ - if (lprc && - (fuOptions & ETO_CLIPPED) && + if (lprc && (fuOptions & ETO_CLIPPED) && DestRect.right >= lprc->right + dc->ptlDCOrig.x) { // We do the check '>=' instead of '>' to possibly save an iteration @@ -3505,6 +3504,11 @@ GreExtTextOutW( DestRect.right = lprc->right + dc->ptlDCOrig.x; DoBreak = TRUE; } + if (lprc && (fuOptions & ETO_CLIPPED) && + DestRect.bottom >= lprc->bottom + dc->ptlDCOrig.y) + { + DestRect.bottom = lprc->bottom + dc->ptlDCOrig.y; + } MouseSafetyOnDrawStart(dc->ppdev, DestRect.left, DestRect.top, DestRect.right, DestRect.bottom); IntEngMaskBlt( SurfObj,