Author: greatlrd
Date: Thu May 29 17:39:39 2008
New Revision: 33763
URL:
http://svn.reactos.org/svn/reactos?rev=33763&view=rev
Log:
patch by Jeffrey Morlan ( email : mrnobo1024 at yahoo dot com )
the comment above is my.
See issue #3295 for more details.
Modified:
trunk/reactos/subsystems/win32/win32k/objects/dibobj.c
Modified: trunk/reactos/subsystems/win32/win32k/objects/dibobj.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/subsystems/win32/win32k/ob…
==============================================================================
--- trunk/reactos/subsystems/win32/win32k/objects/dibobj.c [iso-8859-1] (original)
+++ trunk/reactos/subsystems/win32/win32k/objects/dibobj.c [iso-8859-1] Thu May 29
17:39:39 2008
@@ -812,7 +812,12 @@
pDC = DC_LockDc(hdcMem);
- IntSetDIBits(pDC, hBitmap, 0, BitsInfo->bmiHeader.biHeight, Bits,
+ /* Note BitsInfo->bmiHeader.biHeight is the number of scanline,
+ * if it negitve we getting to many scanline for scanline is UINT not
+ * a INT, so we need make the negtive value to positve and that make the
+ * count correct for negtive bitmap, TODO : we need testcase for this api */
+
+ IntSetDIBits(pDC, hBitmap, 0, abs(BitsInfo->bmiHeader.biHeight), Bits,
BitsInfo, Usage);
DC_UnlockDc(pDC);