ChangeSet ID: 21495 CVSROOT: /opt/cvs-commit Module name: wine Changes by: julliard@winehq.org 2005/11/28 05:07:12
Modified files: dlls/user : menu.c dlls/user/tests: menu.c
Log message: Dmitry Timoshkov dmitry@codeweavers.com 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.
Patch: http://cvs.winehq.org/patch.py?id=21495
Old revision New revision Changes Path 1.41 1.42 +9 -6 wine/dlls/user/menu.c 1.8 1.9 +0 -2 wine/dlls/user/tests/menu.c
Index: wine/dlls/user/menu.c diff -u -p wine/dlls/user/menu.c:1.41 wine/dlls/user/menu.c:1.42 --- wine/dlls/user/menu.c:1.41 28 Nov 2005 11: 7:12 -0000 +++ wine/dlls/user/menu.c 28 Nov 2005 11: 7:12 -0000 @@ -4230,10 +4230,10 @@ static BOOL SetMenuItemInfo_common(MENUI 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(MENUI } 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 ) { Index: wine/dlls/user/tests/menu.c diff -u -p wine/dlls/user/tests/menu.c:1.8 wine/dlls/user/tests/menu.c:1.9 --- wine/dlls/user/tests/menu.c:1.8 28 Nov 2005 11: 7:12 -0000 +++ wine/dlls/user/tests/menu.c 28 Nov 2005 11: 7:12 -0000 @@ -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 ); }