diff options
author | Mauro Aranda <maurooaranda@gmail.com> | 2019-12-30 18:10:28 -0300 |
---|---|---|
committer | Eli Zaretskii <eliz@gnu.org> | 2020-01-11 10:36:59 +0200 |
commit | 8addfa91c8e242d465828c7c8a7a1aa6b06060fc (patch) | |
tree | d157da2ebcfbc527337e7cc93eeb22dcd1a0a2b8 /lisp | |
parent | d6f9b097776925aac8c85da59712cc747062b813 (diff) | |
download | emacs-8addfa91c8e242d465828c7c8a7a1aa6b06060fc.tar.gz |
Reset to the standard value when reverting session's customizations
* lisp/cus-edit.el (custom-variable-reset-saved): When there is no
previous saved value, reset to the standard value. (Bug#15214)
Diffstat (limited to 'lisp')
-rw-r--r-- | lisp/cus-edit.el | 19 |
1 files changed, 10 insertions, 9 deletions
diff --git a/lisp/cus-edit.el b/lisp/cus-edit.el index 0ca3f1ede85..d3d17fda7ad 100644 --- a/lisp/cus-edit.el +++ b/lisp/cus-edit.el @@ -3035,17 +3035,18 @@ Update the widget to show that value. The value that was current before this operation becomes the backup value." (let* ((symbol (widget-value widget)) (saved-value (get symbol 'saved-value)) - (comment (get symbol 'saved-variable-comment))) + (comment (get symbol 'saved-variable-comment)) + value) (custom-variable-backup-value widget) (if (not (or saved-value comment)) - ;; If there is no saved value, remove the setting. - (custom-push-theme 'theme-value symbol 'user 'reset) - ;; Otherwise, apply the saved value. - (put symbol 'variable-comment comment) - (custom-push-theme 'theme-value symbol 'user 'set (car-safe saved-value)) - (ignore-errors - (funcall (or (get symbol 'custom-set) 'set-default) - symbol (eval (car saved-value))))) + ;; If there is no saved value, remove the setting. + (custom-push-theme 'theme-value symbol 'user 'reset) + (setq value (car-safe saved-value)) + (custom-push-theme 'theme-value symbol 'user 'set value) + (put symbol 'variable-comment comment)) + (ignore-errors + (funcall (or (get symbol 'custom-set) #'set-default) symbol + (eval (or value (car (get symbol 'standard-value)))))) (put symbol 'customized-value nil) (put symbol 'customized-variable-comment nil) (widget-put widget :custom-state 'unknown) |