Hey Timo,
I was just about to sync enhmetafile.c with Wine and found that your
original import had the following diff:
--- win32ss/gdi/gdi32/wine/enhmetafile.c (revision 67001)
+++ win32ss/gdi/gdi32/wine/enhmetafile.c (working copy)
@@ -546,8 +546,6 @@
if (!SetWorldTransform(hdc, &final_trans))
{
- __debugbreak();
- SetWorldTransform(hdc, &final_trans);
ERR("World transform failed!\n");
}
}
@@ -1232,12 +1230,10 @@
case EMR_EXTSELECTCLIPRGN:
{
const EMREXTSELECTCLIPRGN *lpRgn = (const EMREXTSELECTCLIPRGN *)mr;
- const RGNDATA *pRgnData = (const RGNDATA *)lpRgn->RgnData;
- DWORD dwSize = sizeof(RGNDATAHEADER) + pRgnData->rdh.nCount * sizeof(RECT);
HRGN hRgn = 0;
if (mr->nSize >= sizeof(*lpRgn) + sizeof(RGNDATAHEADER))
- hRgn = ExtCreateRegion( &info->init_transform, dwSize, pRgnData );
+ hRgn = ExtCreateRegion( &info->init_transform, 0, (const RGNDATA
*)lpRgn->RgnData );
ExtSelectClipRgn(hdc, hRgn, (INT)(lpRgn->iMode));
/* ExtSelectClipRgn created a copy of the region */
(this is the reverse diff, i.e. the one that would get it back in sync
with Wine)
My guess is I should just remove this difference and get it completely
synced (i.e. apply the above patch)? What do you think?
On 2014-12-29 15:25, tkreuzer(a)svn.reactos.org wrote:
Author: tkreuzer
Date: Mon Dec 29 14:25:30 2014
New Revision: 65893
URL:
http://svn.reactos.org/svn/reactos?rev=65893&view=rev
Log:
[GDI32]
Import metafile code from wine. The wine code is unmodified (please keep it that way) and
used through a wrapper function dispatcher and some helpers. Fixes 1931 wine tests.
Added:
trunk/reactos/win32ss/gdi/gdi32/include/wine/ (with props)
trunk/reactos/win32ss/gdi/gdi32/include/wine/gdi_driver.h (with props)
trunk/reactos/win32ss/gdi/gdi32/wine/ (with props)
trunk/reactos/win32ss/gdi/gdi32/wine/CMakeLists.txt (with props)
trunk/reactos/win32ss/gdi/gdi32/wine/enhmetafile.c (with props)
trunk/reactos/win32ss/gdi/gdi32/wine/enhmfdrv/ (with props)
trunk/reactos/win32ss/gdi/gdi32/wine/enhmfdrv/bitblt.c (with props)
trunk/reactos/win32ss/gdi/gdi32/wine/enhmfdrv/dc.c (with props)
trunk/reactos/win32ss/gdi/gdi32/wine/enhmfdrv/enhmetafiledrv.h (with props)
trunk/reactos/win32ss/gdi/gdi32/wine/enhmfdrv/graphics.c (with props)
trunk/reactos/win32ss/gdi/gdi32/wine/enhmfdrv/init.c (with props)
trunk/reactos/win32ss/gdi/gdi32/wine/enhmfdrv/objects.c (with props)
trunk/reactos/win32ss/gdi/gdi32/wine/gdi_private.h (with props)
trunk/reactos/win32ss/gdi/gdi32/wine/metafile.c (with props)
trunk/reactos/win32ss/gdi/gdi32/wine/mfdrv/ (with props)
trunk/reactos/win32ss/gdi/gdi32/wine/mfdrv/bitblt.c (with props)
trunk/reactos/win32ss/gdi/gdi32/wine/mfdrv/dc.c (with props)
trunk/reactos/win32ss/gdi/gdi32/wine/mfdrv/graphics.c (with props)
trunk/reactos/win32ss/gdi/gdi32/wine/mfdrv/init.c (with props)
trunk/reactos/win32ss/gdi/gdi32/wine/mfdrv/metafiledrv.h (with props)
trunk/reactos/win32ss/gdi/gdi32/wine/mfdrv/objects.c (with props)
trunk/reactos/win32ss/gdi/gdi32/wine/mfdrv/text.c (with props)
trunk/reactos/win32ss/gdi/gdi32/wine/rosglue.c (with props)
Modified:
trunk/reactos/win32ss/gdi/gdi32/CMakeLists.txt
trunk/reactos/win32ss/gdi/gdi32/include/gdi32p.h
trunk/reactos/win32ss/gdi/gdi32/misc/misc.c
trunk/reactos/win32ss/gdi/gdi32/objects/arc.c
trunk/reactos/win32ss/gdi/gdi32/objects/bitmap.c
trunk/reactos/win32ss/gdi/gdi32/objects/coord.c
trunk/reactos/win32ss/gdi/gdi32/objects/dc.c
trunk/reactos/win32ss/gdi/gdi32/objects/enhmfile.c
trunk/reactos/win32ss/gdi/gdi32/objects/gdiobj.c
trunk/reactos/win32ss/gdi/gdi32/objects/metafile.c
trunk/reactos/win32ss/gdi/gdi32/objects/painting.c
trunk/reactos/win32ss/gdi/gdi32/objects/palette.c
trunk/reactos/win32ss/gdi/gdi32/objects/path.c
trunk/reactos/win32ss/gdi/gdi32/objects/region.c
trunk/reactos/win32ss/gdi/gdi32/objects/text.c
trunk/reactos/win32ss/include/ntgdihdl.h
[This mail would be too long, it was shortened to contain the URLs only.]
Modified: trunk/reactos/win32ss/gdi/gdi32/CMakeLists.txt
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/win32ss/gdi/gdi32/CMakeLis…
Modified: trunk/reactos/win32ss/gdi/gdi32/include/gdi32p.h
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/win32ss/gdi/gdi32/include/…
Added: trunk/reactos/win32ss/gdi/gdi32/include/wine/gdi_driver.h
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/win32ss/gdi/gdi32/include/…
Modified: trunk/reactos/win32ss/gdi/gdi32/misc/misc.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/win32ss/gdi/gdi32/misc/mis…
Modified: trunk/reactos/win32ss/gdi/gdi32/objects/arc.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/win32ss/gdi/gdi32/objects/…
Modified: trunk/reactos/win32ss/gdi/gdi32/objects/bitmap.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/win32ss/gdi/gdi32/objects/…
Modified: trunk/reactos/win32ss/gdi/gdi32/objects/coord.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/win32ss/gdi/gdi32/objects/…
Modified: trunk/reactos/win32ss/gdi/gdi32/objects/dc.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/win32ss/gdi/gdi32/objects/…
Modified: trunk/reactos/win32ss/gdi/gdi32/objects/enhmfile.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/win32ss/gdi/gdi32/objects/…
Modified: trunk/reactos/win32ss/gdi/gdi32/objects/gdiobj.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/win32ss/gdi/gdi32/objects/…
Modified: trunk/reactos/win32ss/gdi/gdi32/objects/metafile.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/win32ss/gdi/gdi32/objects/…
Modified: trunk/reactos/win32ss/gdi/gdi32/objects/painting.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/win32ss/gdi/gdi32/objects/…
Modified: trunk/reactos/win32ss/gdi/gdi32/objects/palette.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/win32ss/gdi/gdi32/objects/…
Modified: trunk/reactos/win32ss/gdi/gdi32/objects/path.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/win32ss/gdi/gdi32/objects/…
Modified: trunk/reactos/win32ss/gdi/gdi32/objects/region.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/win32ss/gdi/gdi32/objects/…
Modified: trunk/reactos/win32ss/gdi/gdi32/objects/text.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/win32ss/gdi/gdi32/objects/…
Added: trunk/reactos/win32ss/gdi/gdi32/wine/CMakeLists.txt
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/win32ss/gdi/gdi32/wine/CMa…
Added: trunk/reactos/win32ss/gdi/gdi32/wine/enhmetafile.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/win32ss/gdi/gdi32/wine/enh…
Added: trunk/reactos/win32ss/gdi/gdi32/wine/enhmfdrv/bitblt.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/win32ss/gdi/gdi32/wine/enh…
Added: trunk/reactos/win32ss/gdi/gdi32/wine/enhmfdrv/dc.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/win32ss/gdi/gdi32/wine/enh…
Added: trunk/reactos/win32ss/gdi/gdi32/wine/enhmfdrv/enhmetafiledrv.h
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/win32ss/gdi/gdi32/wine/enh…
Added: trunk/reactos/win32ss/gdi/gdi32/wine/enhmfdrv/graphics.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/win32ss/gdi/gdi32/wine/enh…
Added: trunk/reactos/win32ss/gdi/gdi32/wine/enhmfdrv/init.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/win32ss/gdi/gdi32/wine/enh…
Added: trunk/reactos/win32ss/gdi/gdi32/wine/enhmfdrv/objects.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/win32ss/gdi/gdi32/wine/enh…
Added: trunk/reactos/win32ss/gdi/gdi32/wine/gdi_private.h
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/win32ss/gdi/gdi32/wine/gdi…
Added: trunk/reactos/win32ss/gdi/gdi32/wine/metafile.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/win32ss/gdi/gdi32/wine/met…
Added: trunk/reactos/win32ss/gdi/gdi32/wine/mfdrv/bitblt.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/win32ss/gdi/gdi32/wine/mfd…
Added: trunk/reactos/win32ss/gdi/gdi32/wine/mfdrv/dc.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/win32ss/gdi/gdi32/wine/mfd…
Added: trunk/reactos/win32ss/gdi/gdi32/wine/mfdrv/graphics.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/win32ss/gdi/gdi32/wine/mfd…
Added: trunk/reactos/win32ss/gdi/gdi32/wine/mfdrv/init.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/win32ss/gdi/gdi32/wine/mfd…
Added: trunk/reactos/win32ss/gdi/gdi32/wine/mfdrv/metafiledrv.h
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/win32ss/gdi/gdi32/wine/mfd…
Added: trunk/reactos/win32ss/gdi/gdi32/wine/mfdrv/objects.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/win32ss/gdi/gdi32/wine/mfd…
Added: trunk/reactos/win32ss/gdi/gdi32/wine/mfdrv/text.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/win32ss/gdi/gdi32/wine/mfd…
Added: trunk/reactos/win32ss/gdi/gdi32/wine/rosglue.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/win32ss/gdi/gdi32/wine/ros…
Modified: trunk/reactos/win32ss/include/ntgdihdl.h
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/win32ss/include/ntgdihdl.h…