X-Git-Url: https://git.reactos.org/?p=reactos.git;a=blobdiff_plain;f=win32ss%2Fuser%2Fntuser%2Fmenu.c;h=93108bf09d1bed1810e322efe898ba79342de520;hp=37c7a44cc4025a70f01963306b8e46c64fccd52e;hb=a8919a7a3bd8180a1e188ef91fa776ffc0072238;hpb=f3964379b139459abb5e015407eb1446c7f24d4b diff --git a/win32ss/user/ntuser/menu.c b/win32ss/user/ntuser/menu.c index 37c7a44cc40..93108bf09d1 100644 --- a/win32ss/user/ntuser/menu.c +++ b/win32ss/user/ntuser/menu.c @@ -653,6 +653,7 @@ IntGetMenuItemInfo(PMENU_OBJECT Menu, /* UNUSED PARAM!! */ BOOL FASTCALL IntSetMenuItemInfo(PMENU_OBJECT MenuObject, PMENU_ITEM MenuItem, PROSMENUITEMINFO lpmii) { + PMENU_OBJECT SubMenuObject; UINT fTypeMask = (MFT_BITMAP | MFT_MENUBARBREAK | MFT_MENUBREAK | MFT_OWNERDRAW | MFT_RADIOCHECK | MFT_RIGHTJUSTIFY | MFT_SEPARATOR); if(!MenuItem || !MenuObject || !lpmii) @@ -734,6 +735,15 @@ IntSetMenuItemInfo(PMENU_OBJECT MenuObject, PMENU_ITEM MenuItem, PROSMENUITEMINF if(lpmii->fMask & MIIM_SUBMENU) { MenuItem->hSubMenu = lpmii->hSubMenu; + /* Make sure the submenu is marked as a popup menu */ + if (MenuItem->hSubMenu) + { + SubMenuObject = UserGetMenuObject(MenuItem->hSubMenu); + if (SubMenuObject != NULL) + { + SubMenuObject->MenuInfo.Flags |= MF_POPUP; + } + } } if ((lpmii->fMask & MIIM_STRING) ||