diff --git a/reactos/subsystems/win32/win32k/ntuser/window.c b/reactos/subsystems/win32/win32k/ntuser/window.c index f1e70cf63c0..824f8697599 100644 --- a/reactos/subsystems/win32/win32k/ntuser/window.c +++ b/reactos/subsystems/win32/win32k/ntuser/window.c @@ -437,8 +437,9 @@ static LRESULT co_UserFreeWindow(PWND Window, TIMER_RemoveWindowTimers(Window->head.h); #endif - if (!(Window->style & WS_CHILD) && Window->IDMenu - && (Menu = UserGetMenuObject((HMENU)Window->IDMenu))) + if ( ((Window->style & (WS_CHILD|WS_POPUP)) != WS_CHILD) && + Window->IDMenu && + (Menu = UserGetMenuObject((HMENU)Window->IDMenu))) { IntDestroyMenuObject(Menu, TRUE, TRUE); Window->IDMenu = 0;