From: Eli Zaretskii Date: Thu, 26 Apr 2012 10:07:35 +0000 (+0300) Subject: Don't disable Unicode menus on Windows NT and later due to random errors. X-Git-Tag: emacs-24.2.90~471^2~262 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=1c6900d923647582ea9c2ab90f0ccf1fe41603e0;p=emacs.git Don't disable Unicode menus on Windows NT and later due to random errors. src/w32menu.c: Include w32heap.h. (add_menu_item): If the call to AppendMenuW (via unicode_append_menu) fails, disable Unicode menus only if we are running on Windows 9X/Me. --- diff --git a/src/ChangeLog b/src/ChangeLog index 06d65c7bf33..8b23806e57f 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,10 @@ +2012-04-26 Eli Zaretskii + + * w32menu.c: Include w32heap.h. + (add_menu_item): If the call to AppendMenuW (via + unicode_append_menu) fails, disable Unicode menus only if we are + running on Windows 9X/Me. + 2012-04-24 Andreas Schwab * .gdbinit (xpr): Handle USE_2_TAGS_FOR_INTS. diff --git a/src/w32menu.c b/src/w32menu.c index 9091cb81627..5b95a083d90 100644 --- a/src/w32menu.c +++ b/src/w32menu.c @@ -48,6 +48,8 @@ along with GNU Emacs. If not, see . */ #include "dispextern.h" +#include "w32heap.h" /* for osinfo_cache */ + #undef HAVE_DIALOGS /* TODO: Implement native dialogs. */ #ifndef TRUE @@ -1498,8 +1500,11 @@ add_menu_item (HMENU menu, widget_value *wv, HMENU item) AppendMenu (menu, fuFlags, item != NULL ? (UINT) item: (UINT) wv->call_data, out_string); - /* Don't use Unicode menus in future. */ - unicode_append_menu = NULL; + /* Don't use Unicode menus in future, unless this is Windows + NT or later, where a failure of AppendMenuW does NOT mean + Unicode menus are unsupported. */ + if (osinfo_cache.dwPlatformId != VER_PLATFORM_WIN32_NT) + unicode_append_menu = NULL; } if (unicode_append_menu && (fuFlags & MF_OWNERDRAW))