Mercurial > emacs
changeset 91248:ed6fa90c5c89
(x_set_font_backend): Don't call Fclear_font_cache. If
none of the new drivers are available, call font_update_drviers
with the old drivers.
author | Kenichi Handa <handa@m17n.org> |
---|---|
date | Tue, 18 Dec 2007 11:43:51 +0000 |
parents | 217eabc2db11 |
children | 4f21471103e6 |
files | src/frame.c |
diffstat | 1 files changed, 8 insertions(+), 6 deletions(-) [+] |
line wrap: on
line diff
--- a/src/frame.c Tue Dec 18 11:40:00 2007 +0000 +++ b/src/frame.c Tue Dec 18 11:43:51 2007 +0000 @@ -3492,14 +3492,16 @@ return; if (FRAME_FONT_OBJECT (f)) + free_all_realized_faces (Qnil); + + new_value = font_update_drivers (f, NILP (new_value) ? Qt : new_value); + if (NILP (new_value)) { - free_all_realized_faces (Qnil); - Fclear_font_cache (); + if (NILP (old_value)) + error ("No font backend available"); + font_update_drivers (f, old_value); + error ("None of specified font backends are available"); } - - new_value = font_update_drivers (f, new_value); - if (NILP (new_value)) - error ("No font backend available"); store_frame_param (f, Qfont_backend, new_value); if (FRAME_FONT_OBJECT (f))