From b0f665045245035f014c516b3143ff85146d1a54 Mon Sep 17 00:00:00 2001 From: "Shawn M. Chapla" Date: Tue, 30 Jun 2020 13:04:04 -0400 Subject: [PATCH] gdiplus: Set GDI world xform to the identity xform on acquisition. Signed-off-by: Shawn M. Chapla Signed-off-by: Esme Povirk Signed-off-by: Alexandre Julliard --- dlls/gdiplus/graphics.c | 1 + dlls/gdiplus/tests/graphics.c | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/dlls/gdiplus/graphics.c b/dlls/gdiplus/graphics.c index 3c5e25ec413..6c50d2d56cd 100644 --- a/dlls/gdiplus/graphics.c +++ b/dlls/gdiplus/graphics.c @@ -6789,6 +6789,7 @@ GpStatus gdi_transform_acquire(GpGraphics *graphics) if (graphics->gdi_transform_acquire_count == 0 && graphics->hdc) { graphics->gdi_transform_save = SaveDC(graphics->hdc); + ModifyWorldTransform(graphics->hdc, NULL, MWT_IDENTITY); SetGraphicsMode(graphics->hdc, GM_COMPATIBLE); SetMapMode(graphics->hdc, MM_TEXT); SetWindowOrgEx(graphics->hdc, 0, 0, NULL); diff --git a/dlls/gdiplus/tests/graphics.c b/dlls/gdiplus/tests/graphics.c index 39002ca5701..d1f0d03ddcc 100644 --- a/dlls/gdiplus/tests/graphics.c +++ b/dlls/gdiplus/tests/graphics.c @@ -7012,7 +7012,7 @@ static void test_gdi_interop_hdc(void) expect(0x00aa00ff, bits[6 * 100 + 6]); expect(0x00aa00ff, bits[26 * 100 + 26]); expect(0x00aa00ff, bits[36 * 100 + 36]); - todo_wine expect(0xffaa00ff, bits[86 * 100 + 86]); + expect(0xffaa00ff, bits[86 * 100 + 86]); DeleteDC(src_hdc); DeleteObject(hbm);