diff --git a/dll/win32/comdlg32/colordlg.c b/dll/win32/comdlg32/colordlg.c index 1acf3524666..4c73b934bbb 100644 --- a/dll/win32/comdlg32/colordlg.c +++ b/dll/win32/comdlg32/colordlg.c @@ -527,6 +527,7 @@ static void CC_PaintCross(CCPRIV *infoPtr) int wc = GetDialogBaseUnits() * 3 / 4; RECT rect; POINT point, p; + HRGN region; HPEN hPen; int x, y; @@ -535,7 +536,9 @@ static void CC_PaintCross(CCPRIV *infoPtr) GetClientRect(hwnd, &rect); hDC = GetDC(hwnd); - SelectClipRgn( hDC, CreateRectRgnIndirect(&rect)); + region = CreateRectRgnIndirect(&rect); + SelectClipRgn(hDC, region); + DeleteObject(region); point.x = ((long)rect.right * (long)x) / (long)MAXHORI; point.y = rect.bottom - ((long)rect.bottom * (long)y) / (long)MAXVERT;