Author: tkreuzer
Date: Sat Nov  9 19:32:12 2013
New Revision: 60905

URL: http://svn.reactos.org/svn/reactos?rev=60905&view=rev
Log:
[DIBLIB]
Fix ROP operation by ANDing the result with the appropriate dest mask, for all 
required ROPs). Fixes MaskBlt tests.

Modified:
    branches/dib_rewrite/win32ss/gdi/diblib/BitBlt.c
    branches/dib_rewrite/win32ss/gdi/diblib/BitBlt_DSTINVERT.c
    branches/dib_rewrite/win32ss/gdi/diblib/BitBlt_MERGECOPY.c
    branches/dib_rewrite/win32ss/gdi/diblib/BitBlt_MERGEPAINT.c
    branches/dib_rewrite/win32ss/gdi/diblib/BitBlt_NOTPATCOPY.c
    branches/dib_rewrite/win32ss/gdi/diblib/BitBlt_NOTSRCCOPY.c
    branches/dib_rewrite/win32ss/gdi/diblib/BitBlt_NOTSRCERASE.c
    branches/dib_rewrite/win32ss/gdi/diblib/BitBlt_PATCOPY.c
    branches/dib_rewrite/win32ss/gdi/diblib/BitBlt_PATINVERT.c
    branches/dib_rewrite/win32ss/gdi/diblib/BitBlt_PATPAINT.c
    branches/dib_rewrite/win32ss/gdi/diblib/BitBlt_SRCAND.c
    branches/dib_rewrite/win32ss/gdi/diblib/BitBlt_SRCCOPY.c
    branches/dib_rewrite/win32ss/gdi/diblib/BitBlt_SRCERASE.c
    branches/dib_rewrite/win32ss/gdi/diblib/BitBlt_SRCINVERT.c
    branches/dib_rewrite/win32ss/gdi/diblib/BitBlt_SRCPAINT.c
    branches/dib_rewrite/win32ss/gdi/diblib/DibLib_AllDstBPP.h
    branches/dib_rewrite/win32ss/gdi/diblib/DibLib_BitBlt.h
    branches/dib_rewrite/win32ss/gdi/diblib/MaskPaint.c
    branches/dib_rewrite/win32ss/gdi/diblib/MaskPatBlt.c
    branches/dib_rewrite/win32ss/gdi/diblib/MaskPatPaint.c
    branches/dib_rewrite/win32ss/gdi/diblib/MaskSrcBlt.c
    branches/dib_rewrite/win32ss/gdi/diblib/MaskSrcPaint.c
    branches/dib_rewrite/win32ss/gdi/diblib/MaskSrcPatBlt.c
    branches/dib_rewrite/win32ss/gdi/diblib/PatPaint.c
    branches/dib_rewrite/win32ss/gdi/diblib/RopFunctions.h
    branches/dib_rewrite/win32ss/gdi/diblib/SrcPaint.c
    branches/dib_rewrite/win32ss/gdi/diblib/SrcPatBlt.c

Modified: branches/dib_rewrite/win32ss/gdi/diblib/BitBlt.c
URL: 
http://svn.reactos.org/svn/reactos/branches/dib_rewrite/win32ss/gdi/diblib/BitBlt.c?rev=60905&r1=60904&r2=60905&view=diff
==============================================================================
--- branches/dib_rewrite/win32ss/gdi/diblib/BitBlt.c    [iso-8859-1] (original)
+++ branches/dib_rewrite/win32ss/gdi/diblib/BitBlt.c    [iso-8859-1] Sat Nov  9 
19:32:12 2013
@@ -8,7 +8,7 @@
 
 #define __FUNCTIONNAME BitBlt
 
-#define _DibDoRop(pBltData, M, D, S, P) pBltData->apfnDoRop[0](D,S,P)
+#define _DibDoRop(pBltData, M, D, S, P) (pBltData->apfnDoRop[0](D,S,P) & 
_DEST_MASK)
 
 #include "DibLib_AllSrcBPP.h"
 

Modified: branches/dib_rewrite/win32ss/gdi/diblib/BitBlt_DSTINVERT.c
URL: 
http://svn.reactos.org/svn/reactos/branches/dib_rewrite/win32ss/gdi/diblib/BitBlt_DSTINVERT.c?rev=60905&r1=60904&r2=60905&view=diff
==============================================================================
--- branches/dib_rewrite/win32ss/gdi/diblib/BitBlt_DSTINVERT.c  [iso-8859-1] 
(original)
+++ branches/dib_rewrite/win32ss/gdi/diblib/BitBlt_DSTINVERT.c  [iso-8859-1] 
Sat Nov  9 19:32:12 2013
@@ -6,7 +6,7 @@
 #define __USES_DEST 1
 #define __USES_MASK 0
 
-#define _DibDoRop(pBltData, M, D, S, P) ROP_DSTINVERT(D,S,P)
+#define _DibDoRop(pBltData, M, D, S, P) (ROP_DSTINVERT(D,S,P) & _DEST_MASK)
 
 #define __FUNCTIONNAME BitBlt_DSTINVERT
 #include "DibLib_AllDstBPP.h"

Modified: branches/dib_rewrite/win32ss/gdi/diblib/BitBlt_MERGECOPY.c
URL: 
http://svn.reactos.org/svn/reactos/branches/dib_rewrite/win32ss/gdi/diblib/BitBlt_MERGECOPY.c?rev=60905&r1=60904&r2=60905&view=diff
==============================================================================
--- branches/dib_rewrite/win32ss/gdi/diblib/BitBlt_MERGECOPY.c  [iso-8859-1] 
(original)
+++ branches/dib_rewrite/win32ss/gdi/diblib/BitBlt_MERGECOPY.c  [iso-8859-1] 
Sat Nov  9 19:32:12 2013
@@ -6,7 +6,7 @@
 #define __USES_DEST 0
 #define __USES_MASK 0
 
-#define _DibDoRop(pBltData, M, D, S, P) ROP_MERGECOPY(D,S,P)
+#define _DibDoRop(pBltData, M, D, S, P) ROP_MERGECOPY(D,S,P) /* No ANDing 
needed */
 
 #define __FUNCTIONNAME BitBlt_MERGECOPY
 #include "DibLib_AllSrcBPP.h"

Modified: branches/dib_rewrite/win32ss/gdi/diblib/BitBlt_MERGEPAINT.c
URL: 
http://svn.reactos.org/svn/reactos/branches/dib_rewrite/win32ss/gdi/diblib/BitBlt_MERGEPAINT.c?rev=60905&r1=60904&r2=60905&view=diff
==============================================================================
--- branches/dib_rewrite/win32ss/gdi/diblib/BitBlt_MERGEPAINT.c [iso-8859-1] 
(original)
+++ branches/dib_rewrite/win32ss/gdi/diblib/BitBlt_MERGEPAINT.c [iso-8859-1] 
Sat Nov  9 19:32:12 2013
@@ -8,7 +8,7 @@
 
 #define __FUNCTIONNAME BitBlt_MERGEPAINT
 
-#define _DibDoRop(pBltData, M, D, S, P) ROP_MERGEPAINT(D,S,P)
+#define _DibDoRop(pBltData, M, D, S, P) (ROP_MERGEPAINT(D,S,P) & _DEST_MASK)
 
 #include "DibLib_AllSrcBPP.h"
 

Modified: branches/dib_rewrite/win32ss/gdi/diblib/BitBlt_NOTPATCOPY.c
URL: 
http://svn.reactos.org/svn/reactos/branches/dib_rewrite/win32ss/gdi/diblib/BitBlt_NOTPATCOPY.c?rev=60905&r1=60904&r2=60905&view=diff
==============================================================================
--- branches/dib_rewrite/win32ss/gdi/diblib/BitBlt_NOTPATCOPY.c [iso-8859-1] 
(original)
+++ branches/dib_rewrite/win32ss/gdi/diblib/BitBlt_NOTPATCOPY.c [iso-8859-1] 
Sat Nov  9 19:32:12 2013
@@ -8,7 +8,7 @@
 
 #define __FUNCTIONNAME BitBlt_NOTPATCOPY
 
-#define _DibDoRop(pBltData, M, D, S, P) (~(P))
+#define _DibDoRop(pBltData, M, D, S, P) (ROP_NOTPATCOPY(0,0,P) & _DEST_MASK)
 
 #include "DibLib_AllDstBPP.h"
 

Modified: branches/dib_rewrite/win32ss/gdi/diblib/BitBlt_NOTSRCCOPY.c
URL: 
http://svn.reactos.org/svn/reactos/branches/dib_rewrite/win32ss/gdi/diblib/BitBlt_NOTSRCCOPY.c?rev=60905&r1=60904&r2=60905&view=diff
==============================================================================
--- branches/dib_rewrite/win32ss/gdi/diblib/BitBlt_NOTSRCCOPY.c [iso-8859-1] 
(original)
+++ branches/dib_rewrite/win32ss/gdi/diblib/BitBlt_NOTSRCCOPY.c [iso-8859-1] 
Sat Nov  9 19:32:12 2013
@@ -8,7 +8,7 @@
 
 #define __FUNCTIONNAME BitBlt_NOTSRCCOPY
 
-#define _DibDoRop(pBltData, M, D, S, P) ROP_NOTSRCCOPY(D,S,P)
+#define _DibDoRop(pBltData, M, D, S, P) (ROP_NOTSRCCOPY(D,S,P) & _DEST_MASK)
 
 #include "DibLib_AllSrcBPP.h"
 

Modified: branches/dib_rewrite/win32ss/gdi/diblib/BitBlt_NOTSRCERASE.c
URL: 
http://svn.reactos.org/svn/reactos/branches/dib_rewrite/win32ss/gdi/diblib/BitBlt_NOTSRCERASE.c?rev=60905&r1=60904&r2=60905&view=diff
==============================================================================
--- branches/dib_rewrite/win32ss/gdi/diblib/BitBlt_NOTSRCERASE.c        
[iso-8859-1] (original)
+++ branches/dib_rewrite/win32ss/gdi/diblib/BitBlt_NOTSRCERASE.c        
[iso-8859-1] Sat Nov  9 19:32:12 2013
@@ -8,7 +8,7 @@
 
 #define __FUNCTIONNAME BitBlt_NOTSRCERASE
 
-#define _DibDoRop(pBltData, M, D, S, P) ROP_NOTSRCERASE(D,S,P)
+#define _DibDoRop(pBltData, M, D, S, P) (ROP_NOTSRCERASE(D,S,P) & _DEST_MASK)
 
 #include "DibLib_AllSrcBPP.h"
 

Modified: branches/dib_rewrite/win32ss/gdi/diblib/BitBlt_PATCOPY.c
URL: 
http://svn.reactos.org/svn/reactos/branches/dib_rewrite/win32ss/gdi/diblib/BitBlt_PATCOPY.c?rev=60905&r1=60904&r2=60905&view=diff
==============================================================================
--- branches/dib_rewrite/win32ss/gdi/diblib/BitBlt_PATCOPY.c    [iso-8859-1] 
(original)
+++ branches/dib_rewrite/win32ss/gdi/diblib/BitBlt_PATCOPY.c    [iso-8859-1] 
Sat Nov  9 19:32:12 2013
@@ -8,7 +8,7 @@
 
 #define __FUNCTIONNAME BitBlt_PATCOPY
 
-#define _DibDoRop(pBltData, M, D, S, P) ROP_PATCOPY(D,S,P)
+#define _DibDoRop(pBltData, M, D, S, P) ROP_PATCOPY(D,S,P) /* No ANDing needed 
*/
 
 #include "DibLib_AllDstBPP.h"
 

Modified: branches/dib_rewrite/win32ss/gdi/diblib/BitBlt_PATINVERT.c
URL: 
http://svn.reactos.org/svn/reactos/branches/dib_rewrite/win32ss/gdi/diblib/BitBlt_PATINVERT.c?rev=60905&r1=60904&r2=60905&view=diff
==============================================================================
--- branches/dib_rewrite/win32ss/gdi/diblib/BitBlt_PATINVERT.c  [iso-8859-1] 
(original)
+++ branches/dib_rewrite/win32ss/gdi/diblib/BitBlt_PATINVERT.c  [iso-8859-1] 
Sat Nov  9 19:32:12 2013
@@ -8,7 +8,7 @@
 
 #define __FUNCTIONNAME BitBlt_PATINVERT
 
-#define _DibDoRop(pBltData, M, D, S, P) ROP_PATINVERT(D,S,P)
+#define _DibDoRop(pBltData, M, D, S, P) ROP_PATINVERT(D,S,P) /* No ANDing 
needed */
 
 #include "DibLib_AllDstBPP.h"
 

Modified: branches/dib_rewrite/win32ss/gdi/diblib/BitBlt_PATPAINT.c
URL: 
http://svn.reactos.org/svn/reactos/branches/dib_rewrite/win32ss/gdi/diblib/BitBlt_PATPAINT.c?rev=60905&r1=60904&r2=60905&view=diff
==============================================================================
--- branches/dib_rewrite/win32ss/gdi/diblib/BitBlt_PATPAINT.c   [iso-8859-1] 
(original)
+++ branches/dib_rewrite/win32ss/gdi/diblib/BitBlt_PATPAINT.c   [iso-8859-1] 
Sat Nov  9 19:32:12 2013
@@ -8,7 +8,7 @@
 
 #define __FUNCTIONNAME BitBlt_PATPAINT
 
-#define _DibDoRop(pBltData, M, D, S, P) ROP_PATPAINT(D,S,P)
+#define _DibDoRop(pBltData, M, D, S, P) (ROP_PATPAINT(D,S,P) & _DEST_MASK)
 
 #include "DibLib_AllSrcBPP.h"
 

Modified: branches/dib_rewrite/win32ss/gdi/diblib/BitBlt_SRCAND.c
URL: 
http://svn.reactos.org/svn/reactos/branches/dib_rewrite/win32ss/gdi/diblib/BitBlt_SRCAND.c?rev=60905&r1=60904&r2=60905&view=diff
==============================================================================
--- branches/dib_rewrite/win32ss/gdi/diblib/BitBlt_SRCAND.c     [iso-8859-1] 
(original)
+++ branches/dib_rewrite/win32ss/gdi/diblib/BitBlt_SRCAND.c     [iso-8859-1] 
Sat Nov  9 19:32:12 2013
@@ -8,7 +8,7 @@
 
 #define __FUNCTIONNAME BitBlt_SRCAND
 
-#define _DibDoRop(pBltData, M, D, S, P) ROP_SRCAND(D,S,P)
+#define _DibDoRop(pBltData, M, D, S, P) ROP_SRCAND(D,S,P) /* No ANDing needed 
*/
 
 #include "DibLib_AllSrcBPP.h"
 

Modified: branches/dib_rewrite/win32ss/gdi/diblib/BitBlt_SRCCOPY.c
URL: 
http://svn.reactos.org/svn/reactos/branches/dib_rewrite/win32ss/gdi/diblib/BitBlt_SRCCOPY.c?rev=60905&r1=60904&r2=60905&view=diff
==============================================================================
--- branches/dib_rewrite/win32ss/gdi/diblib/BitBlt_SRCCOPY.c    [iso-8859-1] 
(original)
+++ branches/dib_rewrite/win32ss/gdi/diblib/BitBlt_SRCCOPY.c    [iso-8859-1] 
Sat Nov  9 19:32:12 2013
@@ -94,7 +94,7 @@
 
 #define __FUNCTIONNAME BitBlt_SRCCOPY
 
-#define _DibDoRop(pBltData, M, D, S, P) ROP_SRCCOPY(D,S,P)
+#define _DibDoRop(pBltData, M, D, S, P) ROP_SRCCOPY(D,S,P) /* No ANDing needed 
*/
 
 #include "DibLib_AllSrcBPP.h"
 

Modified: branches/dib_rewrite/win32ss/gdi/diblib/BitBlt_SRCERASE.c
URL: 
http://svn.reactos.org/svn/reactos/branches/dib_rewrite/win32ss/gdi/diblib/BitBlt_SRCERASE.c?rev=60905&r1=60904&r2=60905&view=diff
==============================================================================
--- branches/dib_rewrite/win32ss/gdi/diblib/BitBlt_SRCERASE.c   [iso-8859-1] 
(original)
+++ branches/dib_rewrite/win32ss/gdi/diblib/BitBlt_SRCERASE.c   [iso-8859-1] 
Sat Nov  9 19:32:12 2013
@@ -8,7 +8,7 @@
 
 #define __FUNCTIONNAME BitBlt_SRCERASE
 
-#define _DibDoRop(pBltData, M, D, S, P) ROP_SRCERASE(D,S,P)
+#define _DibDoRop(pBltData, M, D, S, P) (ROP_SRCERASE(D,S,P) & _DEST_MASK)
 
 #include "DibLib_AllSrcBPP.h"
 

Modified: branches/dib_rewrite/win32ss/gdi/diblib/BitBlt_SRCINVERT.c
URL: 
http://svn.reactos.org/svn/reactos/branches/dib_rewrite/win32ss/gdi/diblib/BitBlt_SRCINVERT.c?rev=60905&r1=60904&r2=60905&view=diff
==============================================================================
--- branches/dib_rewrite/win32ss/gdi/diblib/BitBlt_SRCINVERT.c  [iso-8859-1] 
(original)
+++ branches/dib_rewrite/win32ss/gdi/diblib/BitBlt_SRCINVERT.c  [iso-8859-1] 
Sat Nov  9 19:32:12 2013
@@ -8,7 +8,7 @@
 
 #define __FUNCTIONNAME BitBlt_SRCINVERT
 
-#define _DibDoRop(pBltData, M, D, S, P) ROP_SRCINVERT(D,S,P)
+#define _DibDoRop(pBltData, M, D, S, P) ROP_SRCINVERT(D,S,P) /* No ANDing 
needed */
 
 #include "DibLib_AllSrcBPP.h"
 

Modified: branches/dib_rewrite/win32ss/gdi/diblib/BitBlt_SRCPAINT.c
URL: 
http://svn.reactos.org/svn/reactos/branches/dib_rewrite/win32ss/gdi/diblib/BitBlt_SRCPAINT.c?rev=60905&r1=60904&r2=60905&view=diff
==============================================================================
--- branches/dib_rewrite/win32ss/gdi/diblib/BitBlt_SRCPAINT.c   [iso-8859-1] 
(original)
+++ branches/dib_rewrite/win32ss/gdi/diblib/BitBlt_SRCPAINT.c   [iso-8859-1] 
Sat Nov  9 19:32:12 2013
@@ -8,7 +8,7 @@
 
 #define __FUNCTIONNAME BitBlt_SRCPAINT
 
-#define _DibDoRop(pBltData, M, D, S, P) ROP_SRCPAINT(D,S,P)
+#define _DibDoRop(pBltData, M, D, S, P) ROP_SRCPAINT(D,S,P) /* No ANDing 
needed */
 
 #include "DibLib_AllSrcBPP.h"
 

Modified: branches/dib_rewrite/win32ss/gdi/diblib/DibLib_AllDstBPP.h
URL: 
http://svn.reactos.org/svn/reactos/branches/dib_rewrite/win32ss/gdi/diblib/DibLib_AllDstBPP.h?rev=60905&r1=60904&r2=60905&view=diff
==============================================================================
--- branches/dib_rewrite/win32ss/gdi/diblib/DibLib_AllDstBPP.h  [iso-8859-1] 
(original)
+++ branches/dib_rewrite/win32ss/gdi/diblib/DibLib_AllDstBPP.h  [iso-8859-1] 
Sat Nov  9 19:32:12 2013
@@ -8,26 +8,32 @@
 #endif
 
 #define _DEST_BPP 1
+#define _DEST_MASK 1
 #include "DibLib_BitBlt.h"
 #undef _DEST_BPP
 
 #define _DEST_BPP 4
+#define _DEST_MASK 0xf
 #include "DibLib_BitBlt.h"
 #undef _DEST_BPP
 
 #define _DEST_BPP 8
+#define _DEST_MASK 0xff
 #include "DibLib_BitBlt.h"
 #undef _DEST_BPP
 
 #define _DEST_BPP 16
+#define _DEST_MASK 0xffff
 #include "DibLib_BitBlt.h"
 #undef _DEST_BPP
 
 #define _DEST_BPP 24
+#define _DEST_MASK 0xffffff
 #include "DibLib_BitBlt.h"
 #undef _DEST_BPP
 
 #define _DEST_BPP 32
+#define _DEST_MASK 0xffffffff
 #include "DibLib_BitBlt.h"
 #undef _DEST_BPP
 

Modified: branches/dib_rewrite/win32ss/gdi/diblib/DibLib_BitBlt.h
URL: 
http://svn.reactos.org/svn/reactos/branches/dib_rewrite/win32ss/gdi/diblib/DibLib_BitBlt.h?rev=60905&r1=60904&r2=60905&view=diff
==============================================================================
--- branches/dib_rewrite/win32ss/gdi/diblib/DibLib_BitBlt.h     [iso-8859-1] 
(original)
+++ branches/dib_rewrite/win32ss/gdi/diblib/DibLib_BitBlt.h     [iso-8859-1] 
Sat Nov  9 19:32:12 2013
@@ -135,3 +135,4 @@
 
 #undef _DibFunction
 #undef __FUNCTIONNAME2
+#undef _DEST_MASK

Modified: branches/dib_rewrite/win32ss/gdi/diblib/MaskPaint.c
URL: 
http://svn.reactos.org/svn/reactos/branches/dib_rewrite/win32ss/gdi/diblib/MaskPaint.c?rev=60905&r1=60904&r2=60905&view=diff
==============================================================================
--- branches/dib_rewrite/win32ss/gdi/diblib/MaskPaint.c [iso-8859-1] (original)
+++ branches/dib_rewrite/win32ss/gdi/diblib/MaskPaint.c [iso-8859-1] Sat Nov  9 
19:32:12 2013
@@ -8,7 +8,7 @@
 
 #define __FUNCTIONNAME MaskPaint
 
-#define _DibDoRop(pBltData, M, D, S, P) pBltData->apfnDoRop[M](D,0,0)
+#define _DibDoRop(pBltData, M, D, S, P) (pBltData->apfnDoRop[M](D,0,0) & 
_DEST_MASK)
 
 #include "DibLib_AllDstBPP.h"
 

Modified: branches/dib_rewrite/win32ss/gdi/diblib/MaskPatBlt.c
URL: 
http://svn.reactos.org/svn/reactos/branches/dib_rewrite/win32ss/gdi/diblib/MaskPatBlt.c?rev=60905&r1=60904&r2=60905&view=diff
==============================================================================
--- branches/dib_rewrite/win32ss/gdi/diblib/MaskPatBlt.c        [iso-8859-1] 
(original)
+++ branches/dib_rewrite/win32ss/gdi/diblib/MaskPatBlt.c        [iso-8859-1] 
Sat Nov  9 19:32:12 2013
@@ -8,7 +8,7 @@
 
 #define __FUNCTIONNAME MaskPatBlt
 
-#define _DibDoRop(pBltData, M, D, S, P) pBltData->apfnDoRop[M](0,0,P)
+#define _DibDoRop(pBltData, M, D, S, P) (pBltData->apfnDoRop[M](0,0,P) & 
_DEST_MASK)
 
 #include "DibLib_AllDstBPP.h"
 

Modified: branches/dib_rewrite/win32ss/gdi/diblib/MaskPatPaint.c
URL: 
http://svn.reactos.org/svn/reactos/branches/dib_rewrite/win32ss/gdi/diblib/MaskPatPaint.c?rev=60905&r1=60904&r2=60905&view=diff
==============================================================================
--- branches/dib_rewrite/win32ss/gdi/diblib/MaskPatPaint.c      [iso-8859-1] 
(original)
+++ branches/dib_rewrite/win32ss/gdi/diblib/MaskPatPaint.c      [iso-8859-1] 
Sat Nov  9 19:32:12 2013
@@ -8,7 +8,7 @@
 
 #define __FUNCTIONNAME MaskPatPaint
 
-#define _DibDoRop(pBltData, M, D, S, P) pBltData->apfnDoRop[M](D,0,P)
+#define _DibDoRop(pBltData, M, D, S, P) (pBltData->apfnDoRop[M](D,0,P) & 
_DEST_MASK)
 
 #include "DibLib_AllDstBPP.h"
 

Modified: branches/dib_rewrite/win32ss/gdi/diblib/MaskSrcBlt.c
URL: 
http://svn.reactos.org/svn/reactos/branches/dib_rewrite/win32ss/gdi/diblib/MaskSrcBlt.c?rev=60905&r1=60904&r2=60905&view=diff
==============================================================================
--- branches/dib_rewrite/win32ss/gdi/diblib/MaskSrcBlt.c        [iso-8859-1] 
(original)
+++ branches/dib_rewrite/win32ss/gdi/diblib/MaskSrcBlt.c        [iso-8859-1] 
Sat Nov  9 19:32:12 2013
@@ -8,7 +8,7 @@
 
 #define __FUNCTIONNAME MaskSrcBlt
 
-#define _DibDoRop(pBltData, M, D, S, P) pBltData->apfnDoRop[M](D,S,0)
+#define _DibDoRop(pBltData, M, D, S, P) (pBltData->apfnDoRop[M](D,S,0) & 
_DEST_MASK)
 
 #include "DibLib_AllSrcBPP.h"
 

Modified: branches/dib_rewrite/win32ss/gdi/diblib/MaskSrcPaint.c
URL: 
http://svn.reactos.org/svn/reactos/branches/dib_rewrite/win32ss/gdi/diblib/MaskSrcPaint.c?rev=60905&r1=60904&r2=60905&view=diff
==============================================================================
--- branches/dib_rewrite/win32ss/gdi/diblib/MaskSrcPaint.c      [iso-8859-1] 
(original)
+++ branches/dib_rewrite/win32ss/gdi/diblib/MaskSrcPaint.c      [iso-8859-1] 
Sat Nov  9 19:32:12 2013
@@ -8,7 +8,7 @@
 
 #define __FUNCTIONNAME MaskSrcPaint
 
-#define _DibDoRop(pBltData, M, D, S, P) pBltData->apfnDoRop[M](D,S,0)
+#define _DibDoRop(pBltData, M, D, S, P) (pBltData->apfnDoRop[M](D,S,0) & 
_DEST_MASK)
 
 #include "DibLib_AllSrcBPP.h"
 

Modified: branches/dib_rewrite/win32ss/gdi/diblib/MaskSrcPatBlt.c
URL: 
http://svn.reactos.org/svn/reactos/branches/dib_rewrite/win32ss/gdi/diblib/MaskSrcPatBlt.c?rev=60905&r1=60904&r2=60905&view=diff
==============================================================================
--- branches/dib_rewrite/win32ss/gdi/diblib/MaskSrcPatBlt.c     [iso-8859-1] 
(original)
+++ branches/dib_rewrite/win32ss/gdi/diblib/MaskSrcPatBlt.c     [iso-8859-1] 
Sat Nov  9 19:32:12 2013
@@ -8,7 +8,7 @@
 
 #define __FUNCTIONNAME MaskSrcPatBlt
 
-#define _DibDoRop(pBltData, M, D, S, P) pBltData->apfnDoRop[M](D,S,P)
+#define _DibDoRop(pBltData, M, D, S, P) (pBltData->apfnDoRop[M](D,S,P) & 
_DEST_MASK)
 
 #include "DibLib_AllSrcBPP.h"
 

Modified: branches/dib_rewrite/win32ss/gdi/diblib/PatPaint.c
URL: 
http://svn.reactos.org/svn/reactos/branches/dib_rewrite/win32ss/gdi/diblib/PatPaint.c?rev=60905&r1=60904&r2=60905&view=diff
==============================================================================
--- branches/dib_rewrite/win32ss/gdi/diblib/PatPaint.c  [iso-8859-1] (original)
+++ branches/dib_rewrite/win32ss/gdi/diblib/PatPaint.c  [iso-8859-1] Sat Nov  9 
19:32:12 2013
@@ -8,7 +8,7 @@
 
 #define __FUNCTIONNAME PatPaint
 
-#define _DibDoRop(pBltData, M, D, S, P) pBltData->apfnDoRop[0](D,0,P)
+#define _DibDoRop(pBltData, M, D, S, P) (pBltData->apfnDoRop[0](D,0,P) & 
_DEST_MASK)
 
 #include "DibLib_AllDstBPP.h"
 

Modified: branches/dib_rewrite/win32ss/gdi/diblib/RopFunctions.h
URL: 
http://svn.reactos.org/svn/reactos/branches/dib_rewrite/win32ss/gdi/diblib/RopFunctions.h?rev=60905&r1=60904&r2=60905&view=diff
==============================================================================
--- branches/dib_rewrite/win32ss/gdi/diblib/RopFunctions.h      [iso-8859-1] 
(original)
+++ branches/dib_rewrite/win32ss/gdi/diblib/RopFunctions.h      [iso-8859-1] 
Sat Nov  9 19:32:12 2013
@@ -278,5 +278,6 @@
 #define ROP_PATCOPY ROP_P
 #define ROP_PATPAINT ROP_DPSnoo
 #define ROP_WHITENESS ROP_1
-
-
+#define ROP_NOTPATCOPY ROP_Pn
+
+

Modified: branches/dib_rewrite/win32ss/gdi/diblib/SrcPaint.c
URL: 
http://svn.reactos.org/svn/reactos/branches/dib_rewrite/win32ss/gdi/diblib/SrcPaint.c?rev=60905&r1=60904&r2=60905&view=diff
==============================================================================
--- branches/dib_rewrite/win32ss/gdi/diblib/SrcPaint.c  [iso-8859-1] (original)
+++ branches/dib_rewrite/win32ss/gdi/diblib/SrcPaint.c  [iso-8859-1] Sat Nov  9 
19:32:12 2013
@@ -8,7 +8,7 @@
 
 #define __FUNCTIONNAME SrcPaint
 
-#define _DibDoRop(pBltData, M, D, S, P) pBltData->apfnDoRop[0](D,S,0)
+#define _DibDoRop(pBltData, M, D, S, P) (pBltData->apfnDoRop[0](D,S,0) & 
_DEST_MASK)
 
 #include "DibLib_AllSrcBPP.h"
 

Modified: branches/dib_rewrite/win32ss/gdi/diblib/SrcPatBlt.c
URL: 
http://svn.reactos.org/svn/reactos/branches/dib_rewrite/win32ss/gdi/diblib/SrcPatBlt.c?rev=60905&r1=60904&r2=60905&view=diff
==============================================================================
--- branches/dib_rewrite/win32ss/gdi/diblib/SrcPatBlt.c [iso-8859-1] (original)
+++ branches/dib_rewrite/win32ss/gdi/diblib/SrcPatBlt.c [iso-8859-1] Sat Nov  9 
19:32:12 2013
@@ -8,7 +8,7 @@
 
 #define __FUNCTIONNAME SrcPatBlt
 
-#define _DibDoRop(pBltData, M, D, S, P) pBltData->apfnDoRop[0](0,S,P)
+#define _DibDoRop(pBltData, M, D, S, P) (pBltData->apfnDoRop[0](0,S,P) & 
_DEST_MASK)
 
 #include "DibLib_AllSrcBPP.h"
 


Reply via email to