From bdb04e9dd182436a08fc80d5f7bda6432439271a Mon Sep 17 00:00:00 2001 From: Eli Zaretskii Date: Tue, 8 Oct 2019 16:13:21 +0300 Subject: [PATCH] Fix aborts when opening a new font after face-cache reset * src/font.c (font_open_for_lface): Make sure the default face is realized before using its height for the font to be open. (Bug#37637) --- src/font.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/font.c b/src/font.c index 935dd64e648..6bc977fd68e 100644 --- a/src/font.c +++ b/src/font.c @@ -3314,6 +3314,10 @@ font_open_for_lface (struct frame *f, Lisp_Object entity, Lisp_Object *attrs, Li pt = XFIXNUM (attrs[LFACE_HEIGHT_INDEX]); else { + /* We need the default face to be valid below. */ + if (FRAME_FACE_CACHE (f)->used == 0) + recompute_basic_faces (f); + struct face *def = FACE_FROM_ID (f, DEFAULT_FACE_ID); Lisp_Object height = def->lface[LFACE_HEIGHT_INDEX]; eassert (FIXNUMP (height)); -- 2.39.5