From: James Tabor Date: Tue, 20 Oct 2015 01:51:16 +0000 (+0000) Subject: [User32] X-Git-Tag: ReactOS-0.4.0~431 X-Git-Url: https://git.reactos.org/?p=reactos.git;a=commitdiff_plain;h=16f015a1bcdf403731ea89915f5639c0b9b5cd54;hp=0e6082f21ec3bef0ec22fd4f9def3451a2f99f1e [User32] - Patch by Dmitry Timoshkov : Always call BeginPaint/EndPaint when handling a WM_PAINT message for the button. - Patch by Alex Henrie : Remove always-false condition. svn path=/trunk/; revision=69624 --- diff --git a/reactos/win32ss/user/user32/controls/button.c b/reactos/win32ss/user/user32/controls/button.c index 939f58b5e48..8b9a9f4de1f 100644 --- a/reactos/win32ss/user/user32/controls/button.c +++ b/reactos/win32ss/user/user32/controls/button.c @@ -356,16 +356,18 @@ LRESULT WINAPI ButtonWndProc_common(HWND hWnd, UINT uMsg, case WM_PRINTCLIENT: case WM_PAINT: + { + PAINTSTRUCT ps; + HDC hdc = wParam ? (HDC)wParam : BeginPaint( hWnd, &ps ); if (btnPaintFunc[btn_type]) { - PAINTSTRUCT ps; - HDC hdc = wParam ? (HDC)wParam : BeginPaint( hWnd, &ps ); int nOldMode = SetBkMode( hdc, OPAQUE ); (btnPaintFunc[btn_type])( hWnd, hdc, ODA_DRAWENTIRE ); SetBkMode(hdc, nOldMode); /* reset painting mode */ - if( !wParam ) EndPaint( hWnd, &ps ); } + if ( !wParam ) EndPaint( hWnd, &ps ); break; + } case WM_KEYDOWN: if (wParam == VK_SPACE) @@ -545,7 +547,6 @@ LRESULT WINAPI ButtonWndProc_common(HWND hWnd, UINT uMsg, break; case BM_SETSTYLE: - if ((wParam & BS_TYPEMASK) >= MAX_BTN_TYPE) break; btn_type = wParam & BS_TYPEMASK; style = (style & ~BS_TYPEMASK) | btn_type; #ifdef __REACTOS__