gdi: fix 24bpp -> 32bpp copy
Huw D M Davies
h.davies1 at physics.ox.ac.uk
Thu Dec 8 06:45:45 CST 2005
This fixes #3387 - Picasa prints in blue.
Huw Davies <huw at codeweavers.com>
Fix 24bpp -> 32bpp copy.
--
Huw Davies
huw at codeweavers.com
diff --git a/dlls/gdi/dib.c b/dlls/gdi/dib.c
index 6b55d8b..26b8a1a 100644
--- a/dlls/gdi/dib.c
+++ b/dlls/gdi/dib.c
@@ -897,7 +897,9 @@ INT WINAPI GetDIBits(
width = min(srcwidth, dstwidth);
for( y = 0; y < lines; y++) {
for( x = 0; x < width; x++, srcbits+=3 )
- *dstbits++ = ((DWORD)*srcbits) & 0x00ffffff;
+ *dstbits++ = srcbits[0] |
+ (srcbits[1] << 8) |
+ (srcbits[2] << 16);
dstbits=(LPDWORD)(dbits+=dstwidthb);
srcbits=(sbits+=srcwidthb);
}
More information about the wine-patches
mailing list