Alexandre Julliard : gdi32: Fix the blend function handling for the AlphaBlend enhanced metafile record .

Alexandre Julliard julliard at winehq.org
Mon Aug 1 13:22:06 CDT 2011


Module: wine
Branch: master
Commit: 2116493653658d7b3cb8347b51f6e9ba88605b72
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=2116493653658d7b3cb8347b51f6e9ba88605b72

Author: Alexandre Julliard <julliard at winehq.org>
Date:   Fri Jul 29 20:08:53 2011 +0200

gdi32: Fix the blend function handling for the AlphaBlend enhanced metafile record.

---

 dlls/gdi32/enhmetafile.c |    8 +-------
 1 files changed, 1 insertions(+), 7 deletions(-)

diff --git a/dlls/gdi32/enhmetafile.c b/dlls/gdi32/enhmetafile.c
index b8863fd..62faa89 100644
--- a/dlls/gdi32/enhmetafile.c
+++ b/dlls/gdi32/enhmetafile.c
@@ -1903,7 +1903,6 @@ BOOL WINAPI PlayEnhMetaFileRecord(
             HDC hdcSrc = CreateCompatibleDC(hdc);
             HBITMAP hBmp = 0, hBmpOld = 0;
             const BITMAPINFO *pbi = (const BITMAPINFO *)((const BYTE *)mr + pAlphaBlend->offBmiSrc);
-            BLENDFUNCTION blendfn;
             void *bits;
 
             SetWorldTransform(hdcSrc, &pAlphaBlend->xformSrc);
@@ -1912,14 +1911,9 @@ BOOL WINAPI PlayEnhMetaFileRecord(
             memcpy(bits, (const BYTE *)mr + pAlphaBlend->offBitsSrc, pAlphaBlend->cbBitsSrc);
             hBmpOld = SelectObject(hdcSrc, hBmp);
 
-            blendfn.BlendOp             = (pAlphaBlend->dwRop >> 24) & 0xff;
-            blendfn.BlendFlags          = (pAlphaBlend->dwRop >> 16) & 0xff;
-            blendfn.SourceConstantAlpha = (pAlphaBlend->dwRop >>  8) & 0xff;
-            blendfn.AlphaFormat         = (pAlphaBlend->dwRop) & 0xff;
-
             GdiAlphaBlend(hdc, pAlphaBlend->xDest, pAlphaBlend->yDest, pAlphaBlend->cxDest, pAlphaBlend->cyDest,
                        hdcSrc, pAlphaBlend->xSrc, pAlphaBlend->ySrc, pAlphaBlend->cxSrc, pAlphaBlend->cySrc,
-                       blendfn);
+                          *(BLENDFUNCTION *)&pAlphaBlend->dwRop);
 
             SelectObject(hdcSrc, hBmpOld);
             DeleteObject(hBmp);




More information about the wine-cvs mailing list