From: Bartosz Kosiorek gang65@poczta.onet.pl
--- dlls/gdi32/dc.c | 6 +++++- dlls/gdi32/tests/brush.c | 4 +--- 2 files changed, 6 insertions(+), 4 deletions(-)
diff --git a/dlls/gdi32/dc.c b/dlls/gdi32/dc.c index 0a57d74485e..3f1531b435a 100644 --- a/dlls/gdi32/dc.c +++ b/dlls/gdi32/dc.c @@ -1129,7 +1129,11 @@ BOOL WINAPI SetBrushOrgEx( HDC hdc, INT x, INT y, POINT *oldorg ) */ BOOL WINAPI FixBrushOrgEx( HDC hdc, INT x, INT y, POINT *oldorg ) { - return SetBrushOrgEx( hdc, x, y, oldorg ); + /* From Windows 2000 function don't do anything and returns FALSE */ + if (LOBYTE(LOWORD(GetVersion())) >= 5) + return FALSE; + + return SetBrushOrgEx(hdc, x, y, oldorg); }
/*********************************************************************** diff --git a/dlls/gdi32/tests/brush.c b/dlls/gdi32/tests/brush.c index 8df3c48a20d..57b4ce4f0e0 100644 --- a/dlls/gdi32/tests/brush.c +++ b/dlls/gdi32/tests/brush.c @@ -431,14 +431,12 @@ static void test_brush_org( void ) ok( pt.x == 0 && pt.y == 0, "got %ld,%ld\n", pt.x, pt.y ); pt.x = 10; pt.y = 20; + /* From Windows 2000 function don't do anything and returns FALSE */ ret = FixBrushOrgEx( hdc, 2, 3, &pt ); - todo_wine ok(!ret, "Unexpected return value %d.\n", ret); - todo_wine ok( pt.x == 10 && pt.y == 20, "got %ld,%ld\n", pt.x, pt.y ); ret = GetBrushOrgEx( hdc, &pt ); ok(ret, "Unexpected return value %d.\n", ret); - todo_wine ok( pt.x == 0 && pt.y == 0, "got %ld,%ld\n", pt.x, pt.y );
ReleaseDC( 0, hdc );