Alexandre Julliard : user32: Always pass 0 as item id for WM_MEASUREITEM in menus.

Alexandre Julliard julliard at winehq.org
Tue Jun 21 12:25:41 CDT 2011


Module: wine
Branch: master
Commit: efaa068cd1280e411cc6ff5ecc8ae30d36ad4559
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=efaa068cd1280e411cc6ff5ecc8ae30d36ad4559

Author: Alexandre Julliard <julliard at winehq.org>
Date:   Tue Jun 21 16:12:53 2011 +0200

user32: Always pass 0 as item id for WM_MEASUREITEM in menus.

---

 dlls/user32/menu.c       |    2 +-
 dlls/user32/tests/menu.c |    4 ++++
 2 files changed, 5 insertions(+), 1 deletions(-)

diff --git a/dlls/user32/menu.c b/dlls/user32/menu.c
index b0c7f78..3ec682f 100644
--- a/dlls/user32/menu.c
+++ b/dlls/user32/menu.c
@@ -822,7 +822,7 @@ static void MENU_GetBitmapItemSize( MENUITEM *lpitem, SIZE *size,
             measItem.itemWidth = lpitem->rect.right - lpitem->rect.left;
             measItem.itemHeight = lpitem->rect.bottom - lpitem->rect.top;
             measItem.itemData = lpitem->dwItemData;
-            SendMessageW( hwndOwner, WM_MEASUREITEM, lpitem->wID, (LPARAM)&measItem);
+            SendMessageW( hwndOwner, WM_MEASUREITEM, 0, (LPARAM)&measItem);
             size->cx = measItem.itemWidth;
             size->cy = measItem.itemHeight;
             return;
diff --git a/dlls/user32/tests/menu.c b/dlls/user32/tests/menu.c
index 5c133f9..e29039a 100644
--- a/dlls/user32/tests/menu.c
+++ b/dlls/user32/tests/menu.c
@@ -169,6 +169,8 @@ static LRESULT WINAPI menu_ownerdraw_wnd_proc(HWND hwnd, UINT msg,
                 if( winetest_debug)
                     trace("WM_MEASUREITEM received data %lx size %dx%d\n",
                             pmis->itemData, pmis->itemWidth, pmis->itemHeight);
+                ok( !wparam, "wrong wparam %lx\n", wparam );
+                ok( pmis->CtlType == ODT_MENU, "wrong type %x\n", pmis->CtlType );
                 MOD_odheight = pmis->itemHeight;
                 pmis->itemWidth = MODsizes[pmis->itemData].cx;
                 pmis->itemHeight = MODsizes[pmis->itemData].cy;
@@ -197,6 +199,8 @@ static LRESULT WINAPI menu_ownerdraw_wnd_proc(HWND hwnd, UINT msg,
                             pdis->rcItem.right,pdis->rcItem.bottom );
                     SelectObject( pdis->hDC, oldpen);
                 }
+                ok( !wparam, "wrong wparam %lx\n", wparam );
+                ok( pdis->CtlType == ODT_MENU, "wrong type %x\n", pdis->CtlType );
                 /* calculate widths of some menu texts */
                 if( ! MOD_txtsizes[0].size.cx)
                     for(i = 0; MOD_txtsizes[i].text; i++) {




More information about the wine-cvs mailing list