svn path=/trunk/; revision=21650
}
}
else
- {
- /* FIXME */
- //DPRINT1("DIB_24BPP_Bitblt: Unhandled BltInfo->XlateSourceToDest for 16 -> 16 copy\n");
- // return DIB_16BPP_BitBltSrcCopy(BltInfo);
+ {
sx = BltInfo->SourcePoint.x;
- sy = BltInfo->SourcePoint.y;
+ sy = BltInfo->SourcePoint.y;
for (j=BltInfo->DestRect.top; j<BltInfo->DestRect.bottom; j++)
{
{
Dest32 = (DWORD *) DestBits + (BltInfo->DestRect.right - BltInfo->DestRect.left - 1);
Source32 = (DWORD *) SourceBits + (BltInfo->DestRect.right - BltInfo->DestRect.left - 1);
- for (i = BltInfo->DestRect.right; BltInfo->DestRect.left < i; i--)
+ for (i = BltInfo->DestRect.right; BltInfo->DestRect.left <= i; i--)
{
*Dest32-- = XLATEOBJ_iXlate(BltInfo->XlateSourceToDest, *Source32--);
}
if (XlateObj->flXlate & XO_TRIVIAL)
return Color;
+
+ if ((XlateObj->flXlate & XO_TABLE))
+ return XlateObj->pulXlate[Color & 0xff];
- if (XlateObj->flXlate & XO_TABLE)
- return XlateObj->pulXlate[Color];
if (XlateObj->flXlate & XO_TO_MONO)
return Color == XlateObj->pulXlate[0];