Commit b7f501c7 authored by Eli Zaretskii's avatar Eli Zaretskii

Backport: Don't disable Unicode menus on Windows NT and later.

 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.
 src/makefile.w32-in ($(BLD)/w32menu.$(O)): Depend on w32heap.h.
parent 4432d2e2
2012-08-13 Eli Zaretskii <eliz@gnu.org>
* 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.
* makefile.w32-in ($(BLD)/w32menu.$(O)): Depend on w32heap.h.
* window.c (Fdelete_other_windows_internal)
(Fdelete_window_internal): Don't access frame's mouse highlight
info of the initial frame. (Bug#11677)
......
......@@ -1506,6 +1506,7 @@ $(BLD)/w32menu.$(O) : \
$(SRC)/w32menu.c \
$(SRC)/buffer.h \
$(SRC)/keymap.h \
$(SRC)/w32heap.h \
$(BLOCKINPUT_H) \
$(CHARSET_H) \
$(CODING_H) \
......
......@@ -40,6 +40,8 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
if this is not done before the other system files. */
#include "w32term.h"
#include "w32heap.h"
/* Load sys/types.h if not already loaded.
In some systems loading it twice is suicidal. */
#ifndef makedev
......@@ -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))
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment