summaryrefslogtreecommitdiff
path: root/src/w32fns.c
diff options
context:
space:
mode:
authorJason Rumney <jasonr@gnu.org>2004-10-16 23:02:25 +0000
committerJason Rumney <jasonr@gnu.org>2004-10-16 23:02:25 +0000
commit0424a1b04306efa6096a59c38a337a40c7dfd856 (patch)
tree719f3d86daf95023759e301a1f3278e55fd70a2d /src/w32fns.c
parentbe13cbb78b1986aa44989cf715f05dc07d359348 (diff)
downloademacs-0424a1b04306efa6096a59c38a337a40c7dfd856.tar.gz
(w32_font_match): Encode font name being matched.
Diffstat (limited to 'src/w32fns.c')
-rw-r--r--src/w32fns.c12
1 files changed, 7 insertions, 5 deletions
diff --git a/src/w32fns.c b/src/w32fns.c
index 5cfc4adb0af..1e52155ab3b 100644
--- a/src/w32fns.c
+++ b/src/w32fns.c
@@ -5370,7 +5370,7 @@ x_to_w32_font (lpxstr, lplogfont)
setup_coding_system
(Fcheck_coding_system (Vlocale_coding_system), &coding);
coding.src_multibyte = 1;
- coding.dst_multibyte = 1;
+ coding.dst_multibyte = 0;
/* Need to set COMPOSITION_DISABLED, otherwise Emacs crashes in
encode_coding_iso2022 trying to dereference a null pointer. */
coding.composing = COMPOSITION_DISABLED;
@@ -5607,12 +5607,14 @@ w32_font_match (fontname, pattern)
char * fontname;
char * pattern;
{
- char *regex = alloca (strlen (pattern) * 2 + 3);
- char *font_name_copy = alloca (strlen (fontname) + 1);
+ char *font_name_copy;
char *ptr;
+ Lisp_Object encoded_font_name;
+ char *regex = alloca (strlen (pattern) * 2 + 3);
- /* Copy fontname so we can modify it during comparison. */
- strcpy (font_name_copy, fontname);
+ /* Convert fontname to unibyte for match. */
+ encoded_font_name = string_make_unibyte (build_string (fontname));
+ font_name_copy = SDATA (encoded_font_name);
ptr = regex;
*ptr++ = '^';