Author: fireball Date: Sun Mar 15 20:00:13 2009 New Revision: 40040
URL: http://svn.reactos.org/svn/reactos?rev=40040&view=rev Log: Evgeniy Boltik bstsoft@narod.ru - Brush's origin is always (0,0) of a window, not a screen. Offset it accordingly in NtGdiStretchBlt. See issue #4147 for more details.
Modified: trunk/reactos/subsystems/win32/win32k/objects/bitblt.c
Modified: trunk/reactos/subsystems/win32/win32k/objects/bitblt.c URL: http://svn.reactos.org/svn/reactos/trunk/reactos/subsystems/win32/win32k/obj... ============================================================================== --- trunk/reactos/subsystems/win32/win32k/objects/bitblt.c [iso-8859-1] (original) +++ trunk/reactos/subsystems/win32/win32k/objects/bitblt.c [iso-8859-1] Sun Mar 15 20:00:13 2009 @@ -879,6 +879,10 @@ IntGdiInitBrushInstance(&BrushInst, BrushObj, DCDest->XlateBrush); }
+ /* Offset the brush */ + BrushOrigin.x += DCDest->ptlDCOrig.x; + BrushOrigin.y += DCDest->ptlDCOrig.y; + /* Perform the bitblt operation */ Status = IntEngStretchBlt(&BitmapDest->SurfObj, &BitmapSrc->SurfObj, NULL, DCDest->CombinedClip, XlateObj,