(font_open_by_spec): New function.
authorKenichi Handa <handa@m17n.org>
Wed, 11 Mar 2009 11:44:21 +0000 (11:44 +0000)
committerKenichi Handa <handa@m17n.org>
Wed, 11 Mar 2009 11:44:21 +0000 (11:44 +0000)
(font_open_by_name): Use font_open_by_spec.

src/ChangeLog
src/font.c

index 331d06f..036d540 100644 (file)
@@ -1,5 +1,8 @@
 2009-03-11  Kenichi Handa  <handa@m17n.org>
 
+       * font.c (font_open_by_spec): New function.
+       (font_open_by_name): Use font_open_by_spec.
+
        * frame.c (x_set_font): When ARG is a font-object, don't alter the
        fontset of the frame.
 
index 9a656b1..5ad6d0b 100644 (file)
@@ -3484,20 +3484,16 @@ font_done_for_face (f, face)
 }
 
 
-/* Open a font best matching with NAME on frame F.  If no proper font
-   is found, return Qnil.  */
+/* Open a font matching with font-spec SPEC on frame F.  If no proper
+   font is found, return Qnil.  */
 
 Lisp_Object
-font_open_by_name (f, name)
+font_open_by_spec (f, spec)
      FRAME_PTR f;
-     char *name;
+     Lisp_Object spec;
 {
-  Lisp_Object args[2];
-  Lisp_Object spec, attrs[LFACE_VECTOR_SIZE];
+  Lisp_Object attrs[LFACE_VECTOR_SIZE];
 
-  args[0] = QCname;
-  args[1] = make_unibyte_string (name, strlen (name));
-  spec = Ffont_spec (2, args);
   /* We set up the default font-related attributes of a face to prefer
      a moderate font.  */
   attrs[LFACE_FAMILY_INDEX] = attrs[LFACE_FOUNDRY_INDEX] = Qnil;
@@ -3514,6 +3510,24 @@ font_open_by_name (f, name)
 }
 
 
+/* Open a font matching with NAME on frame F.  If no proper font is
+   found, return Qnil.  */
+
+Lisp_Object
+font_open_by_name (f, name)
+     FRAME_PTR f;
+     char *name;
+{
+  Lisp_Object args[2];
+  Lisp_Object spec;
+
+  args[0] = QCname;
+  args[1] = make_unibyte_string (name, strlen (name));
+  spec = Ffont_spec (2, args);
+  return font_open_by_spec (f, spec);
+}
+
+
 /* Register font-driver DRIVER.  This function is used in two ways.
 
    The first is with frame F non-NULL.  In this case, make DRIVER