]> code.delx.au - gnu-emacs/blobdiff - lisp/savehist.el
* server.el (server-buffer-done): Avoid changing the buffer when
[gnu-emacs] / lisp / savehist.el
index c2674fd4f8e6c1f1d5c706c1d8e9a9d2d0509e71..c1c9a3db8fae36a5cc65dd285e461e10bf465b99 100644 (file)
@@ -318,14 +318,15 @@ If AUTO-SAVE is non-nil, compare the saved contents to the one last saved,
                (dolist (elt value)
                  (let ((start (point)))
                    (insert " ")
-                   (prin1 elt (current-buffer))
-                   ;; Try to read the element we just printed.
+                   ;; Try to print and then to read an element.
                    (condition-case nil
-                       (save-excursion
-                         (goto-char start)
-                         (read (current-buffer)))
+                       (progn
+                         (prin1 elt (current-buffer))
+                         (save-excursion
+                           (goto-char start)
+                           (read (current-buffer))))
                      (error
-                      ;; If reading it gets an error, comment it out.
+                      ;; If writing or reading gave an error, comment it out.
                       (goto-char start)
                       (insert "\n")
                       (while (not (eobp))