From 6e3fee06d9bbac50f843efb333d1e919b78299b1 Mon Sep 17 00:00:00 2001 From: Paul Eggert Date: Sat, 28 May 2016 03:37:00 -0700 Subject: [PATCH] Fix face attribute default settings Problem reported by Martin Rudalics in: http://lists.gnu.org/archive/html/emacs-devel/2016-05/msg00557.html * lisp/dynamic-setting.el (font-setting-change-default-font): Don't confuse default face font user spec with frame font. --- lisp/dynamic-setting.el | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/lisp/dynamic-setting.el b/lisp/dynamic-setting.el index 6021a3b..854d3ad 100644 --- a/lisp/dynamic-setting.el +++ b/lisp/dynamic-setting.el @@ -53,17 +53,17 @@ font-setting-change-default-font (set-frame-font new-font nil frame-list) ;; Just redraw the existing fonts on all frames: (dolist (f frame-list) - (let ((frame-font - (or (font-get (face-attribute 'default :font f 'default) - :user-spec) - (frame-parameter f 'font-parameter)))) + (let ((user-spec (font-get (face-attribute 'default :font f 'default) + :user-spec)) + (frame-font (frame-parameter f 'font-parameter))) (when frame-font - (set-frame-parameter f 'font-parameter frame-font) + (set-frame-parameter f 'font-parameter frame-font)) + (when default-face-font-user-spec (set-face-attribute 'default f :width 'normal :weight 'normal :slant 'normal - :font frame-font)))))))) + :font user-spec)))))))) (defun dynamic-setting-handle-config-changed-event (event) "Handle config-changed-event on the display in EVENT. -- 2.7.4