aboutsummaryrefslogtreecommitdiffstats
path: root/src/ftfont.c
diff options
context:
space:
mode:
authorDmitry Antipov2014-07-08 18:50:45 +0400
committerDmitry Antipov2014-07-08 18:50:45 +0400
commit96f17a2f73d1a29c7cdc279daa1fb7f1b7f58aff (patch)
treeeff4991614caccccefdc7d9b10f795728070159e /src/ftfont.c
parentd64a4984c147d0c4550aa1e9e3b9a5db10b3de6a (diff)
downloademacs-96f17a2f73d1a29c7cdc279daa1fb7f1b7f58aff.tar.gz
emacs-96f17a2f73d1a29c7cdc279daa1fb7f1b7f58aff.zip
* font.c (font_build_object) [HAVE_XFT || HAVE_FREETYPE || HAVE_NS]:
New function, with an intention to avoid code duplication between a few font drivers. * font.h (font_build_object) [HAVE_XFT || HAVE_FREETYPE || HAVE_NS]: Add prototype. * ftfont.c (ftfont_open): * macfont.m (macfont_open): * xftfont.c (xftfont_open): Use it.
Diffstat (limited to 'src/ftfont.c')
-rw-r--r--src/ftfont.c16
1 files changed, 3 insertions, 13 deletions
diff --git a/src/ftfont.c b/src/ftfont.c
index 7c5d01208d2..2d75dc22679 100644
--- a/src/ftfont.c
+++ b/src/ftfont.c
@@ -1183,8 +1183,7 @@ ftfont_open (struct frame *f, Lisp_Object entity, int pixel_size)
1183 Lisp_Object val, filename, idx, cache, font_object; 1183 Lisp_Object val, filename, idx, cache, font_object;
1184 bool scalable; 1184 bool scalable;
1185 int spacing; 1185 int spacing;
1186 char name[256]; 1186 int i;
1187 int i, len;
1188 int upEM; 1187 int upEM;
1189 1188
1190 val = assq_no_quit (QCfont_entity, AREF (entity, FONT_EXTRA_INDEX)); 1189 val = assq_no_quit (QCfont_entity, AREF (entity, FONT_EXTRA_INDEX));
@@ -1221,17 +1220,8 @@ ftfont_open (struct frame *f, Lisp_Object entity, int pixel_size)
1221 return Qnil; 1220 return Qnil;
1222 } 1221 }
1223 1222
1224 font_object = font_make_object (VECSIZE (struct ftfont_info), entity, size); 1223 font_object = font_build_object (VECSIZE (struct ftfont_info),
1225 ASET (font_object, FONT_TYPE_INDEX, Qfreetype); 1224 Qfreetype, entity, size);
1226 len = font_unparse_xlfd (entity, size, name, 256);
1227 if (len > 0)
1228 ASET (font_object, FONT_NAME_INDEX, make_string (name, len));
1229 len = font_unparse_fcname (entity, size, name, 256);
1230 if (len > 0)
1231 ASET (font_object, FONT_FULLNAME_INDEX, make_string (name, len));
1232 else
1233 ASET (font_object, FONT_FULLNAME_INDEX,
1234 AREF (font_object, FONT_NAME_INDEX));
1235 ASET (font_object, FONT_FILE_INDEX, filename); 1225 ASET (font_object, FONT_FILE_INDEX, filename);
1236 ASET (font_object, FONT_FORMAT_INDEX, ftfont_font_format (NULL, filename)); 1226 ASET (font_object, FONT_FORMAT_INDEX, ftfont_font_format (NULL, filename));
1237 font = XFONT_OBJECT (font_object); 1227 font = XFONT_OBJECT (font_object);