[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
master a4c07bc: Protect non-selected face spec components in custimize-f
From: |
Alan Mackenzie |
Subject: |
master a4c07bc: Protect non-selected face spec components in custimize-face. Fixes bug #40866 |
Date: |
Fri, 1 May 2020 08:25:12 -0400 (EDT) |
branch: master
commit a4c07bc8c8201a620c4365c1d0d2cb814cc677a9
Author: Alan Mackenzie <address@hidden>
Commit: Alan Mackenzie <address@hidden>
Protect non-selected face spec components in custimize-face. Fixes bug
#40866
* lisp/cus-edit.el (custom-face-save): If the current face widget is only
displaying part of the face spec, temporarily set it to "display" the whole
spec around the call to custom-face-mark-to-save.
---
lisp/cus-edit.el | 12 +++++++++++-
1 file changed, 11 insertions(+), 1 deletion(-)
diff --git a/lisp/cus-edit.el b/lisp/cus-edit.el
index d3d17fd..1ec2708 100644
--- a/lisp/cus-edit.el
+++ b/lisp/cus-edit.el
@@ -3824,7 +3824,17 @@ Optional EVENT is the location for the menu."
(defun custom-face-save (widget)
"Save the face edited by WIDGET."
- (custom-face-mark-to-save widget)
+ (let ((form (widget-get widget :custom-form)))
+ (if (memq form '(all lisp))
+ (custom-face-mark-to-save widget)
+ ;; The user is working on only a selected terminal type;
+ ;; make sure we save the entire spec to `custom-file'. (Bug #40866)
+ (custom-face-edit-all widget)
+ (custom-face-mark-to-save widget)
+ (if (eq form 'selected)
+ (custom-face-edit-selected widget)
+ ;; `form' is edit or mismatch; can't happen.
+ (widget-put widget :custom-form form))))
(custom-save-all)
(custom-face-state-set-and-redraw widget))
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- master a4c07bc: Protect non-selected face spec components in custimize-face. Fixes bug #40866,
Alan Mackenzie <=