aboutsummaryrefslogtreecommitdiffstats
path: root/src/xftfont.c
diff options
context:
space:
mode:
authorDmitry Antipov2013-12-12 18:26:06 +0400
committerDmitry Antipov2013-12-12 18:26:06 +0400
commitcf86e18b159f754d6e5537b7b9cbefc32297f7d2 (patch)
treeb584773b90d5cb4c5993cc194037686110a89e36 /src/xftfont.c
parentc4246a6008ef0c69db296df4aab95530f8e2b95e (diff)
downloademacs-cf86e18b159f754d6e5537b7b9cbefc32297f7d2.tar.gz
emacs-cf86e18b159f754d6e5537b7b9cbefc32297f7d2.zip
* font.h (struct font_entity) [HAVE_NS]: New field to record
font driver which was used to create this entity. (struct font) [HAVE_WINDOW_SYSTEM]: New field to record frame where the font was opened. (font_close_object): Add prototype. * font.c (font_make_entity) [HAVE_NS]: Zero out driver field. (font_close_object): Not static any more. Lost frame arg. Adjust comment and users. * alloc.c (cleanup_vector): Call font_close_object to adjust per-frame font counters correctly. If HAVE_NS, also call driver-specific cleanup for font-entity objects. * ftfont.c (ftfont_open): * nsfont.m (nsfont_open): * w32font.c (w32font_open_internal): * xfont.c (xfont_open): * xftfont.c (xftfont_open): Save frame pointer in font object. * macfont.m (macfont_open): Likewise. (macfont_descriptor_entity): Save driver pointer to be able to call its free_entity routine when font-entity is swept. * ftxfont.c (ftxfont_open): Add eassert because frame pointer should be saved by ftfont_driver.open.
Diffstat (limited to 'src/xftfont.c')
-rw-r--r--src/xftfont.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/src/xftfont.c b/src/xftfont.c
index 37b33b3ead8..6423f8e19b3 100644
--- a/src/xftfont.c
+++ b/src/xftfont.c
@@ -365,6 +365,7 @@ xftfont_open (struct frame *f, Lisp_Object entity, int pixel_size)
365 ASET (font_object, FONT_FORMAT_INDEX, 365 ASET (font_object, FONT_FORMAT_INDEX,
366 ftfont_font_format (xftfont->pattern, filename)); 366 ftfont_font_format (xftfont->pattern, filename));
367 font = XFONT_OBJECT (font_object); 367 font = XFONT_OBJECT (font_object);
368 font->frame = f;
368 font->pixel_size = size; 369 font->pixel_size = size;
369 font->driver = &xftfont_driver; 370 font->driver = &xftfont_driver;
370 font->encoding_charset = font->repertory_charset = -1; 371 font->encoding_charset = font->repertory_charset = -1;