Only access dwTypeData if the caller pronounced it valid.
Modified: trunk/reactos/lib/user32/windows/menu.c
_____
Modified: trunk/reactos/lib/user32/windows/menu.c
--- trunk/reactos/lib/user32/windows/menu.c 2005-09-16 15:18:23 UTC
(rev 17882)
+++ trunk/reactos/lib/user32/windows/menu.c 2005-09-16 15:34:19 UTC
(rev 17883)
@@ -4646,7 +4646,10 @@
MENUITEMINFOW MenuItemInfoW;
RtlCopyMemory(&MenuItemInfoW, lpmii, min(lpmii->cbSize,
sizeof(MENUITEMINFOW)));
- MenuItemInfoW.cch = wcslen(MenuItemInfoW.dwTypeData);
+ if (0 != (MenuItemInfoW.fMask & MIIM_STRING))
+ {
+ MenuItemInfoW.cch = wcslen(MenuItemInfoW.dwTypeData);
+ }
return NtUserMenuItemInfo(hMenu, uItem, fByPosition,
(PROSMENUITEMINFO)&MenuItemInfoW, TRUE);