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);