]> git.eshelyaron.com Git - emacs.git/commitdiff
Make custom-data saving atomic
authorLars Ingebrigtsen <larsi@gnus.org>
Fri, 4 Dec 2020 11:15:26 +0000 (12:15 +0100)
committerLars Ingebrigtsen <larsi@gnus.org>
Fri, 4 Dec 2020 11:15:29 +0000 (12:15 +0100)
* lisp/cus-edit.el (custom-save-all): Do the custom saves as an
atomic change group, to avoid writing invalid data if something
goes wrong (or the user hits `C-g') in the middle (bug#18633).

lisp/cus-edit.el

index a00cb17e298bb096f24ddbadcf2abc241d711709..3a36cb02373a8a99132680291361aa09886f22c7 100644 (file)
@@ -4717,8 +4717,9 @@ if only the first line of the docstring is shown."))
       (let ((inhibit-read-only t)
            (print-length nil)
            (print-level nil))
-       (custom-save-variables)
-       (custom-save-faces))
+        (atomic-change-group
+         (custom-save-variables)
+         (custom-save-faces)))
       (let ((file-precious-flag t))
        (save-buffer))
       (if old-buffer