+2012-07-21 Eli Zaretskii <eliz@gnu.org>
+
+ * w32menu.c (add_menu_item): Cast to UINT_PTR when assigning
+ info.dwItemData. Fixes crashes on 64-bit Windows. Suggested by
+ Fabrice Popineau <fabrice.popineau@supelec.fr>.
+
2012-07-21 Jan Djärv <jan.h.d@swipnet.se>
* nsterm.m (accessibilityAttributeValue): New function. (Bug#11134).
until it is ready to be displayed, since GC can happen while
menus are active. */
if (!NILP (wv->help))
- info.dwItemData = (DWORD) XLI (wv->help);
+ {
+ /* As of Jul-2012, w32api headers say that dwItemData
+ has DWORD type, but that's a bug: it should actually
+ be UINT_PTR, which is correct for 32-bit and 64-bit
+ Windows alike. MSVC headers get it right; hopefully,
+ MinGW headers will, too. */
+ info.dwItemData = (UINT_PTR) XLI (wv->help);
+ }
if (wv->button_type == BUTTON_TYPE_RADIO)
{
/* CheckMenuRadioItem allows us to differentiate TOGGLE and