1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2026-04-27 16:51:06 -07:00

Fix bug #18162 with assertion violations due to empty face cache.

src/fontset.c (Finternal_char_font): Recompute basic faces if the
 frame's face cache was cleared.
This commit is contained in:
Eli Zaretskii 2014-08-07 18:18:10 +03:00
parent 6df16fba2a
commit 8db811eff1
2 changed files with 9 additions and 0 deletions

View file

@ -1,3 +1,8 @@
2014-08-07 Eli Zaretskii <eliz@gnu.org>
* fontset.c (Finternal_char_font): Recompute basic faces if the
frame's face cache was cleared. (Bug#18162)
2014-08-05 Dmitry Antipov <dmantipov@yandex.ru>
Fix bug with uninitialized undo list of an indirect buffer (Bug#18180).

View file

@ -1860,6 +1860,10 @@ DEFUN ("internal-char-font", Finternal_char_font, Sinternal_char_font, 1, 2, 0,
return Qnil;
if (!FRAME_WINDOW_P (f))
return Qnil;
/* We need the basic faces to be valid below, so recompute them if
some code just happened to clear the face cache. */
if (FRAME_FACE_CACHE (f)->used == 0)
recompute_basic_faces (f);
face_id = FACE_FOR_CHAR (f, FACE_FROM_ID (f, face_id), c, pos, Qnil);
face = FACE_FROM_ID (f, face_id);
if (face->font)