Date: Fri, 4 Feb 2011 13:53:50 +0000
To: ros-diffs(a)reactos.org
From: tkreuzer(a)svn.reactos.org
Subject: [ros-diffs] [tkreuzer] 50605: [WIN32K] Fix a bug in calculation of the
background color for 32bpp -> 1bpp color translations. Fixes bug 2372
Author: tkreuzer
Date: Fri Feb 4 13:53:49 2011
New Revision: 50605
URL:
http://svn.reactos.org/svn/reactos?rev=50605&view=rev
Log:
[WIN32K]
Fix a bug in calculation of the background color for 32bpp -> 1bpp color
translations.
Fixes bug 2372
Modified:
trunk/reactos/subsystems/win32/win32k/eng/xlate.c
Modified: trunk/reactos/subsystems/win32/win32k/eng/xlate.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/subsystems/win32/win32k/en…
==============================================================================
--- trunk/reactos/subsystems/win32/win32k/eng/xlate.c [iso-8859-1] (original)
+++ trunk/reactos/subsystems/win32/win32k/eng/xlate.c [iso-8859-1] Fri Feb 4 13:53:49
2011
@@ -91,7 +91,7 @@
iColor >>= 13;
iNewColor |= iColor & 0x3E0;
- /* Copy green */
+ /* Copy blue */
iColor >>= 13;
iNewColor |= iColor & 0x1F;
@@ -417,11 +417,11 @@
pexlo->aulXlate[0] =
PALETTE_ulGetNearestPaletteIndex(ppalSrc, crSrcBackColor);
}
+ else if (ppalSrc->flFlags & PAL_RGB)
+ {
+ pexlo->aulXlate[0] = crSrcBackColor;
+ }
else if (ppalSrc->flFlags & PAL_BGR)
- {
- pexlo->aulXlate[0] = crSrcBackColor;
- }
- else if (ppalSrc->flFlags & PAL_RGB)
{
pexlo->aulXlate[0] = RGB(GetBValue(crSrcBackColor),
GetGValue(crSrcBackColor),