[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Emacs-diffs] Changes to emacs/src/fontset.c [emacs-unicode-2]
From: |
Kenichi Handa |
Subject: |
[Emacs-diffs] Changes to emacs/src/fontset.c [emacs-unicode-2] |
Date: |
Fri, 22 Oct 2004 21:40:47 -0400 |
Index: emacs/src/fontset.c
diff -c emacs/src/fontset.c:1.77.4.21 emacs/src/fontset.c:1.77.4.22
*** emacs/src/fontset.c:1.77.4.21 Fri Oct 22 10:13:34 2004
--- emacs/src/fontset.c Sat Oct 23 01:35:24 2004
***************
*** 262,268 ****
static Lisp_Object fontset_pattern_regexp P_ ((Lisp_Object));
static void accumulate_script_ranges P_ ((Lisp_Object, Lisp_Object,
Lisp_Object));
! static Lisp_Object find_font_encoding P_ ((char *));
static void set_fontset_font P_ ((Lisp_Object, Lisp_Object));
--- 262,268 ----
static Lisp_Object fontset_pattern_regexp P_ ((Lisp_Object));
static void accumulate_script_ranges P_ ((Lisp_Object, Lisp_Object,
Lisp_Object));
! static Lisp_Object find_font_encoding P_ ((Lisp_Object));
static void set_fontset_font P_ ((Lisp_Object, Lisp_Object));
***************
*** 973,978 ****
--- 973,979 ----
int charset;
{
struct font_info *fontp;
+ Lisp_Object fullname;
if (!fontname)
/* No way to get fontname. */
***************
*** 983,994 ****
return fontp;
fontname = fontp->full_name;
if (charset < 0)
{
Lisp_Object charset_symbol;
! charset_symbol = find_font_encoding (fontname);
if (CONSP (charset_symbol))
charset_symbol = XCAR (charset_symbol);
charset = XINT (CHARSET_SYMBOL_ID (charset_symbol));
--- 984,996 ----
return fontp;
fontname = fontp->full_name;
+ fullname = build_string (fontp->full_name);
if (charset < 0)
{
Lisp_Object charset_symbol;
! charset_symbol = find_font_encoding (fullname);
if (CONSP (charset_symbol))
charset_symbol = XCAR (charset_symbol);
charset = XINT (CHARSET_SYMBOL_ID (charset_symbol));
***************
*** 1001,1008 ****
{
fontp->vertical_centering
= (STRINGP (Vvertical_centering_font_regexp)
! && (fast_c_string_match_ignore_case
! (Vvertical_centering_font_regexp, fontname) >= 0));
if (find_ccl_program_func)
(*find_ccl_program_func) (fontp);
--- 1003,1010 ----
{
fontp->vertical_centering
= (STRINGP (Vvertical_centering_font_regexp)
! && (fast_string_match_ignore_case
! (Vvertical_centering_font_regexp, fullname) >= 0));
if (find_ccl_program_func)
(*find_ccl_program_func) (fontp);
***************
*** 1023,1029 ****
static Lisp_Object
find_font_encoding (fontname)
! char *fontname;
{
Lisp_Object tail, elt;
--- 1025,1031 ----
static Lisp_Object
find_font_encoding (fontname)
! Lisp_Object fontname;
{
Lisp_Object tail, elt;
***************
*** 1032,1038 ****
elt = XCAR (tail);
if (CONSP (elt)
&& STRINGP (XCAR (elt))
! && fast_c_string_match_ignore_case (XCAR (elt), fontname) >= 0
&& (SYMBOLP (XCDR (elt))
? CHARSETP (XCDR (elt))
: CONSP (XCDR (elt)) && CHARSETP (XCAR (XCDR (elt)))))
--- 1034,1040 ----
elt = XCAR (tail);
if (CONSP (elt)
&& STRINGP (XCAR (elt))
! && fast_string_match_ignore_case (XCAR (elt), fontname) >= 0
&& (SYMBOLP (XCDR (elt))
? CHARSETP (XCDR (elt))
: CONSP (XCDR (elt)) && CHARSETP (XCAR (XCDR (elt)))))
***************
*** 1444,1452 ****
}
if (STRINGP (font_spec))
! encoding = find_font_encoding ((char *) SDATA (font_spec));
else
! encoding = find_font_encoding ((char *) SDATA (registry));
if (SYMBOLP (encoding))
{
CHECK_CHARSET (encoding);
--- 1446,1454 ----
}
if (STRINGP (font_spec))
! encoding = find_font_encoding (font_spec);
else
! encoding = find_font_encoding (registry);
if (SYMBOLP (encoding))
{
CHECK_CHARSET (encoding);