mirror of
git://source.winehq.org/git/wine.git
synced 2024-10-14 09:41:41 +00:00
user32: Always release menu item in EnableMenuItem.
Signed-off-by: Fabian Maurer <dark.shadow4@web.de> Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
parent
15215bd071
commit
aee9fa0e55
|
@ -3741,28 +3741,25 @@ BOOL WINAPI EnableMenuItem( HMENU hMenu, UINT id, UINT wFlags )
|
|||
item->fState ^= (oldflags ^ wFlags) & (MF_GRAYED | MF_DISABLED);
|
||||
|
||||
/* If the close item in the system menu change update the close button */
|
||||
if ((item->wID == SC_CLOSE) && (oldflags != wFlags))
|
||||
if ((item->wID == SC_CLOSE) && (oldflags != wFlags) && menu->hSysMenuOwner)
|
||||
{
|
||||
if (menu->hSysMenuOwner)
|
||||
{
|
||||
RECT rc;
|
||||
POPUPMENU* parentMenu;
|
||||
HWND hwnd;
|
||||
RECT rc;
|
||||
POPUPMENU* parentMenu;
|
||||
HWND hwnd;
|
||||
|
||||
/* Get the parent menu to access*/
|
||||
parentMenu = grab_menu_ptr(menu->hSysMenuOwner);
|
||||
release_menu_ptr(menu);
|
||||
if (!parentMenu)
|
||||
return (UINT)-1;
|
||||
/* Get the parent menu to access */
|
||||
parentMenu = grab_menu_ptr(menu->hSysMenuOwner);
|
||||
release_menu_ptr(menu);
|
||||
if (!parentMenu)
|
||||
return (UINT)-1;
|
||||
|
||||
hwnd = parentMenu->hWnd;
|
||||
release_menu_ptr(parentMenu);
|
||||
hwnd = parentMenu->hWnd;
|
||||
release_menu_ptr(parentMenu);
|
||||
|
||||
/* Refresh the frame to reflect the change */
|
||||
WIN_GetRectangles( hwnd, COORDS_CLIENT, &rc, NULL );
|
||||
rc.bottom = 0;
|
||||
RedrawWindow(hwnd, &rc, 0, RDW_FRAME | RDW_INVALIDATE | RDW_NOCHILDREN);
|
||||
}
|
||||
/* Refresh the frame to reflect the change */
|
||||
WIN_GetRectangles(hwnd, COORDS_CLIENT, &rc, NULL);
|
||||
rc.bottom = 0;
|
||||
RedrawWindow(hwnd, &rc, 0, RDW_FRAME | RDW_INVALIDATE | RDW_NOCHILDREN);
|
||||
}
|
||||
else
|
||||
release_menu_ptr(menu);
|
||||
|
|
Loading…
Reference in a new issue