]> git.eshelyaron.com Git - emacs.git/commitdiff
Avoid failing in desktop-clear due to killed buffers
authorSergey Organov <sorganov@gmail.com>
Thu, 22 Jul 2021 12:22:26 +0000 (14:22 +0200)
committerLars Ingebrigtsen <larsi@gnus.org>
Thu, 22 Jul 2021 12:22:26 +0000 (14:22 +0200)
* lisp/desktop.el (desktop-clear): check that buffer is not already
killed before attempting to kill it. A buffer might become killed as
part of regular operation as a side-effect of killing another buffer,
and then attempt to kill it again causes error (bug#49692).

Copyright-paperwork-exempt: yes

lisp/desktop.el

index b9467c87527a3a7c7b8e6fbdd6d46ac5b45f5040..3b25713216382291dc08d4957604c744d1131153 100644 (file)
@@ -706,8 +706,9 @@ if different)."
                                  "\\)\\'")))
     (dolist (buffer (buffer-list))
       (let ((bufname (buffer-name buffer)))
-       (unless (or (eq (aref bufname 0) ?\s) ;; Don't kill internal buffers
-                   (string-match-p preserve-regexp bufname))
+       (unless (or (null bufname)
+                   (eq (aref bufname 0) ?\s) ;; Don't kill internal buffers
+                  (string-match-p preserve-regexp bufname))
          (kill-buffer buffer)))))
   (delete-other-windows)
   (when (and desktop-restore-frames