[WIN32K:NTUSER] Fix WIN32K BSOD mentioned in CORE-15027

Fixes accessing nullptr / invalid handle in Window->SystemMenu
I could trigger this occasionally when moving Opera 12.18 window
in front of Spotify 1.0.29.92 window.

Fix was:
authored by Thomas Faber (Thank you!)
tested by me
reviewed by James Tabor
This commit is contained in:
Joachim Henze 2018-09-21 03:04:31 +02:00
parent f8f83d4d4d
commit ef016bfe0a

View file

@ -5181,7 +5181,7 @@ IntGetSystemMenu(PWND Window, BOOL bRevert)
else
{
Menu = Window->SystemMenu ? UserGetMenuObject(Window->SystemMenu) : NULL;
if ((!Window->SystemMenu || Menu->fFlags & MNF_SYSDESKMN) && Window->style & WS_SYSMENU)
if ((!Menu || Menu->fFlags & MNF_SYSDESKMN) && Window->style & WS_SYSMENU)
{
Menu = MENU_GetSystemMenu(Window, NULL);
Window->SystemMenu = Menu ? UserHMGetHandle(Menu) : NULL;