/[emacs]/emacs/src/fontset.c
ViewVC logotype

Diff of /emacs/src/fontset.c

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.77.4.21 by miles, Fri Oct 22 10:13:34 2004 UTC revision 1.77.4.22 by handa, Sat Oct 23 01:35:24 2004 UTC
# Line 262  static Lisp_Object make_fontset P_ ((Lis Line 262  static Lisp_Object make_fontset P_ ((Lis
262  static Lisp_Object fontset_pattern_regexp P_ ((Lisp_Object));  static Lisp_Object fontset_pattern_regexp P_ ((Lisp_Object));
263  static void accumulate_script_ranges P_ ((Lisp_Object, Lisp_Object,  static void accumulate_script_ranges P_ ((Lisp_Object, Lisp_Object,
264                                            Lisp_Object));                                            Lisp_Object));
265  static Lisp_Object find_font_encoding P_ ((char *));  static Lisp_Object find_font_encoding P_ ((Lisp_Object));
266    
267  static void set_fontset_font P_ ((Lisp_Object, Lisp_Object));  static void set_fontset_font P_ ((Lisp_Object, Lisp_Object));
268    
# Line 973  fs_load_font (f, fontname, charset) Line 973  fs_load_font (f, fontname, charset)
973       int charset;       int charset;
974  {  {
975    struct font_info *fontp;    struct font_info *fontp;
976      Lisp_Object fullname;
977    
978    if (!fontname)    if (!fontname)
979      /* No way to get fontname.  */      /* No way to get fontname.  */
# Line 983  fs_load_font (f, fontname, charset) Line 984  fs_load_font (f, fontname, charset)
984      return fontp;      return fontp;
985    
986    fontname = fontp->full_name;    fontname = fontp->full_name;
987      fullname = build_string (fontp->full_name);
988    
989    if (charset < 0)    if (charset < 0)
990      {      {
991        Lisp_Object charset_symbol;        Lisp_Object charset_symbol;
992    
993        charset_symbol = find_font_encoding (fontname);        charset_symbol = find_font_encoding (fullname);
994        if (CONSP (charset_symbol))        if (CONSP (charset_symbol))
995          charset_symbol = XCAR (charset_symbol);          charset_symbol = XCAR (charset_symbol);
996        charset = XINT (CHARSET_SYMBOL_ID (charset_symbol));        charset = XINT (CHARSET_SYMBOL_ID (charset_symbol));
# Line 1001  fs_load_font (f, fontname, charset) Line 1003  fs_load_font (f, fontname, charset)
1003      {      {
1004        fontp->vertical_centering        fontp->vertical_centering
1005          = (STRINGP (Vvertical_centering_font_regexp)          = (STRINGP (Vvertical_centering_font_regexp)
1006             && (fast_c_string_match_ignore_case             && (fast_string_match_ignore_case
1007                 (Vvertical_centering_font_regexp, fontname) >= 0));                 (Vvertical_centering_font_regexp, fullname) >= 0));
1008    
1009        if (find_ccl_program_func)        if (find_ccl_program_func)
1010          (*find_ccl_program_func) (fontp);          (*find_ccl_program_func) (fontp);
# Line 1023  fs_load_font (f, fontname, charset) Line 1025  fs_load_font (f, fontname, charset)
1025    
1026  static Lisp_Object  static Lisp_Object
1027  find_font_encoding (fontname)  find_font_encoding (fontname)
1028       char *fontname;       Lisp_Object fontname;
1029  {  {
1030    Lisp_Object tail, elt;    Lisp_Object tail, elt;
1031    
# Line 1032  find_font_encoding (fontname) Line 1034  find_font_encoding (fontname)
1034        elt = XCAR (tail);        elt = XCAR (tail);
1035        if (CONSP (elt)        if (CONSP (elt)
1036            && STRINGP (XCAR (elt))            && STRINGP (XCAR (elt))
1037            && fast_c_string_match_ignore_case (XCAR (elt), fontname) >= 0            && fast_string_match_ignore_case (XCAR (elt), fontname) >= 0
1038            && (SYMBOLP (XCDR (elt))            && (SYMBOLP (XCDR (elt))
1039                ? CHARSETP (XCDR (elt))                ? CHARSETP (XCDR (elt))
1040                : CONSP (XCDR (elt)) && CHARSETP (XCAR (XCDR (elt)))))                : CONSP (XCDR (elt)) && CHARSETP (XCAR (XCDR (elt)))))
# Line 1444  appended.  By default, FONT-SPEC overrid Line 1446  appended.  By default, FONT-SPEC overrid
1446      }      }
1447    
1448    if (STRINGP (font_spec))    if (STRINGP (font_spec))
1449      encoding = find_font_encoding ((char *) SDATA (font_spec));      encoding = find_font_encoding (font_spec);
1450    else    else
1451      encoding = find_font_encoding ((char *) SDATA (registry));      encoding = find_font_encoding (registry);
1452    if (SYMBOLP (encoding))    if (SYMBOLP (encoding))
1453      {      {
1454        CHECK_CHARSET (encoding);        CHECK_CHARSET (encoding);

Legend:
Removed from v.1.77.4.21  
changed lines
  Added in v.1.77.4.22

savannah-hackers-public@gnu.org
ViewVC Help
Powered by ViewVC 1.1.26