From 0f1307239d29f4a06878c95840d9a43318f857b5 Mon Sep 17 00:00:00 2001 From: Mauro Aranda Date: Mon, 30 Dec 2019 18:10:28 -0300 Subject: [PATCH] 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) --- lisp/cus-edit.el | 19 ++++++++++--------- 1 file changed, 10 insertions(+), 9 deletions(-) diff --git a/lisp/cus-edit.el b/lisp/cus-edit.el index 439667a..8a5fc8c 100644 --- a/lisp/cus-edit.el +++ b/lisp/cus-edit.el @@ -3035,17 +3035,18 @@ custom-variable-reset-saved 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) -- 2.7.4