set_menu_item_text handles converting an empty menu item to a

separator on its own, give it a chance to do its work in the
MIIM_FTYPE case.
This commit is contained in:
Dmitry Timoshkov 2005-11-28 11:53:20 +01:00 committed by Alexandre Julliard
parent 3592110af7
commit b9212e2aba
2 changed files with 9 additions and 8 deletions

View File

@ -4230,10 +4230,10 @@ static BOOL SetMenuItemInfo_common(MENUITEM * menu,
menu->fType &= ~MENU_ITEM_TYPE(menu->fType);
menu->fType |= MENU_ITEM_TYPE(lpmii->fType);
menu->text = lpmii->dwTypeData;
if (IS_STRING_ITEM(menu->fType))
set_menu_item_text( menu, lpmii->dwTypeData, unicode );
if (IS_STRING_ITEM(menu->fType))
set_menu_item_text( menu, lpmii->dwTypeData, unicode );
else
menu->text = lpmii->dwTypeData;
}
if (lpmii->fMask & MIIM_FTYPE ) {
@ -4244,8 +4244,11 @@ static BOOL SetMenuItemInfo_common(MENUITEM * menu,
}
menu->fType &= ~MENU_ITEM_TYPE(menu->fType);
menu->fType |= MENU_ITEM_TYPE(lpmii->fType);
if ( IS_STRING_ITEM(menu->fType) && !menu->text )
menu->fType |= MF_SEPARATOR;
if (IS_STRING_ITEM(menu->fType))
set_menu_item_text( menu, lpmii->dwTypeData, unicode );
else
menu->text = lpmii->dwTypeData;
}
if (lpmii->fMask & MIIM_STRING ) {

View File

@ -277,9 +277,7 @@ static void test_menu_add_string( void )
string[0] = 0;
GetMenuItemInfo( hmenu, 0, TRUE, &info );
todo_wine {
ok( !strcmp( string, "blah" ), "menu item name differed\n");
}
DestroyMenu( hmenu );
}