From 83e2e961b013fe086072fd8dbc7eb8d17cc586d1 Mon Sep 17 00:00:00 2001 From: Po Lu Date: Mon, 9 May 2022 20:23:20 +0800 Subject: [PATCH] Fix reading faces with a default value that is a symbol * lisp/faces.el (read-face-name): Don't try to intern face if it is already a symbol. --- lisp/faces.el | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/lisp/faces.el b/lisp/faces.el index 1ada05a7b8b..2d4b7761be6 100644 --- a/lisp/faces.el +++ b/lisp/faces.el @@ -1148,13 +1148,18 @@ returned. Otherwise, DEFAULT is returned verbatim." nil t nil 'face-name-history default)) ;; Ignore elements that are not faces ;; (for example, because DEFAULT was "all faces") - (if (facep face) (push (intern face) faces))) + (if (facep face) (push (if (stringp face) + (intern face) + face) + faces))) (nreverse faces)) (let ((face (completing-read prompt (completion-table-in-turn nonaliasfaces aliasfaces) nil t nil 'face-name-history defaults))) - (if (facep face) (intern face))))))) + (when (facep face) (if (stringp face) + (intern face) + face))))))) ;; Not defined without X, but behind window-system test. (defvar x-bitmap-file-path) -- 2.39.2