patch by Jeffrey Morlan (mrnobo1024 at yahoo dot com, irc: Goplat):

fix coordinate transformation for NtGdiSetDIBitsToDevice,
fixes bug 3200
See issue #3294 for more details.

svn path=/trunk/; revision=33861
This commit is contained in:
Timo Kreuzer 2008-06-05 22:23:19 +00:00
parent 56d318331b
commit d448c26dba
2 changed files with 10 additions and 3 deletions

View file

@ -447,8 +447,9 @@ SetDIBitsToDevice(
ColorUse,
lpbmi->bmiHeader.biSizeImage,
lpbmi->bmiHeader.biSize,
FALSE,
TRUE,
NULL);
}

View file

@ -372,8 +372,14 @@ NtGdiSetDIBitsToDeviceInternal(
rcDest.left = XDest;
rcDest.top = YDest;
rcDest.right = XDest + Width;
rcDest.bottom = YDest + Height;
if (bTransformCoordinates)
{
CoordLPtoDP(pDC, (LPPOINT)&rcDest);
}
rcDest.left += pDC->ptlDCOrig.x;
rcDest.top += pDC->ptlDCOrig.y;
rcDest.right = rcDest.left + Width;
rcDest.bottom = rcDest.top + Height;
ptSource.x = XSrc;
ptSource.y = YSrc;