Vincent Povirk : gdiplus: Fix matrix append flag in metafile transform records.

Alexandre Julliard julliard at winehq.org
Mon Aug 8 11:09:28 CDT 2016


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

Author: Vincent Povirk <vincent at codeweavers.com>
Date:   Fri Aug  5 16:14:35 2016 -0500

gdiplus: Fix matrix append flag in metafile transform records.

Signed-off-by: Vincent Povirk <vincent at codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>

---

 dlls/gdiplus/metafile.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/dlls/gdiplus/metafile.c b/dlls/gdiplus/metafile.c
index f0c0bd1..f869b90 100644
--- a/dlls/gdiplus/metafile.c
+++ b/dlls/gdiplus/metafile.c
@@ -576,7 +576,7 @@ GpStatus METAFILE_ScaleWorldTransform(GpMetafile* metafile, REAL sx, REAL sy, Ma
             return stat;
 
         record->Header.Type = EmfPlusRecordTypeScaleWorldTransform;
-        record->Header.Flags = (order == MatrixOrderAppend ? 4 : 0);
+        record->Header.Flags = (order == MatrixOrderAppend ? 0x2000 : 0);
         record->Sx = sx;
         record->Sy = sy;
 
@@ -948,7 +948,7 @@ GpStatus WINGDIPAPI GdipPlayMetafileRecord(GDIPCONST GpMetafile *metafile,
         case EmfPlusRecordTypeScaleWorldTransform:
         {
             EmfPlusScaleWorldTransform *record = (EmfPlusScaleWorldTransform*)header;
-            MatrixOrder order = (flags & 0x4) ? MatrixOrderAppend : MatrixOrderPrepend;
+            MatrixOrder order = (flags & 0x2000) ? MatrixOrderAppend : MatrixOrderPrepend;
 
             if (dataSize + sizeof(EmfPlusRecordHeader) < sizeof(EmfPlusScaleWorldTransform))
                 return InvalidParameter;




More information about the wine-cvs mailing list