[PATCH] gdi32/tests: MoveToEx() does not return the old point.
Francois Gouget
fgouget at codeweavers.com
Thu Nov 21 09:10:12 CST 2019
This behavior goes back to at least Windows XP.
Note that Wine depends on MoveToEx() returning the old point.
Signed-off-by: Francois Gouget <fgouget at codeweavers.com>
---
dlls/gdi32/tests/metafile.c | 15 +++++++--------
1 file changed, 7 insertions(+), 8 deletions(-)
diff --git a/dlls/gdi32/tests/metafile.c b/dlls/gdi32/tests/metafile.c
index 6adafa37b82..3920b8c0c43 100644
--- a/dlls/gdi32/tests/metafile.c
+++ b/dlls/gdi32/tests/metafile.c
@@ -2262,16 +2262,15 @@ static void test_mf_Graphics(void)
ok( ret, "MoveToEx error %d.\n", GetLastError());
ret = LineTo(hdcMetafile, 2, 2);
ok( ret, "LineTo error %d.\n", GetLastError());
+ oldpoint.x = oldpoint.y = 11235;
ret = MoveToEx(hdcMetafile, 1, 1, &oldpoint);
ok( ret, "MoveToEx error %d.\n", GetLastError());
-
-/* oldpoint gets garbage under Win XP, so the following test would
- * work under Wine but fails under Windows:
- *
- * ok((oldpoint.x == 2) && (oldpoint.y == 2),
- * "MoveToEx: (x, y) = (%ld, %ld), should be (2, 2).\n",
- * oldpoint.x, oldpoint.y);
- */
+ /* Windows 9x and older may have returned oldpoint as per the
+ * documentation, but it stopped doing so with Windows XP.
+ */
+ ok(broken(oldpoint.x == 11235 && oldpoint.y == 11235),
+ "MoveToEx: oldpoint = (%d, %d), should be (11235, 11235).\n",
+ oldpoint.x, oldpoint.y);
ret = Ellipse(hdcMetafile, 0, 0, 2, 2);
ok( ret, "Ellipse error %d.\n", GetLastError());
--
2.20.1
More information about the wine-devel
mailing list