[PATCH] Skip GetMenuItemInfo tests on NT4
Paul Vriens
Paul.Vriens.Wine at gmail.com
Wed Nov 5 13:33:28 CST 2008
---
dlls/user32/tests/menu.c | 37 +++++++++++++++++++++++++++++++------
1 files changed, 31 insertions(+), 6 deletions(-)
diff --git a/dlls/user32/tests/menu.c b/dlls/user32/tests/menu.c
index e4c4cea..b69ba7a 100644
--- a/dlls/user32/tests/menu.c
+++ b/dlls/user32/tests/menu.c
@@ -57,6 +57,26 @@ static void init_function_pointers(void)
#undef GET_PROC
}
+static BOOL correct_behavior(void)
+{
+ HMENU hmenu;
+ MENUITEMINFO info;
+ BOOL rc;
+
+ memset( &info, 0, sizeof info );
+ info.cbSize= sizeof(MENUITEMINFO);
+ SetLastError(0xdeadbeef);
+ rc = GetMenuItemInfo( hmenu, 0, TRUE, &info );
+ /* NT4 */
+ if (!rc && GetLastError() == ERROR_INVALID_PARAMETER)
+ {
+ win_skip("NT4 can't handle bigger MENUITEMINFO struct\n");
+ return FALSE;
+ }
+
+ return TRUE;
+}
+
static LRESULT WINAPI menu_check_wnd_proc(HWND hwnd, UINT msg, WPARAM wparam, LPARAM lparam)
{
switch (msg)
@@ -2351,13 +2371,21 @@ START_TEST(menu)
{
init_function_pointers();
+ /* MENUITEMINFO has a different structsize on NT4 and below and fails on NT4 */
+ if (correct_behavior())
+ {
+ test_menu_add_string();
+ test_menu_iteminfo();
+ test_menu_search_bycommand();
+ test_CheckMenuRadioItem();
+ test_menu_resource_layout();
+ test_InsertMenu();
+ }
+
register_menu_check_class();
test_menu_locked_by_window();
test_menu_ownerdraw();
- test_menu_add_string();
- test_menu_iteminfo();
- test_menu_search_bycommand();
test_menu_bmp_and_string();
if( !pSendInput)
@@ -2367,7 +2395,4 @@ START_TEST(menu)
test_menu_flags();
test_menu_hilitemenuitem();
- test_CheckMenuRadioItem();
- test_menu_resource_layout();
- test_InsertMenu();
}
--
1.5.4.3
--------------040005040705070801050807--
More information about the wine-patches
mailing list