From 2776a6502b211c45e6b4e65549436d2d8527b6f3 Mon Sep 17 00:00:00 2001
From: Ivan Shmakov <ivan@siamics.net>
Date: Tue, 9 Sep 2014 20:47:20 -0400
Subject: [PATCH] * lisp/desktop.el (desktop-create-buffer): Check that buffers
 are still live before burying them.

Fixes: debbugs:18373
---
 lisp/ChangeLog  | 5 +++++
 lisp/desktop.el | 4 +++-
 2 files changed, 8 insertions(+), 1 deletion(-)

diff --git a/lisp/ChangeLog b/lisp/ChangeLog
index 7018d3c8abb..46cb4ba0d68 100644
--- a/lisp/ChangeLog
+++ b/lisp/ChangeLog
@@ -1,3 +1,8 @@
+2014-09-10  Ivan Shmakov  <ivan@siamics.net>  (tiny change)
+
+	* desktop.el (desktop-create-buffer): Check that buffers are still live
+	before burying them (bug#18373).
+
 2014-09-09  Glenn Morris  <rgm@gnu.org>
 
 	* calendar/diary-lib.el (diary-list-entries):
diff --git a/lisp/desktop.el b/lisp/desktop.el
index 40e6b364e45..360ff48339b 100644
--- a/lisp/desktop.el
+++ b/lisp/desktop.el
@@ -1375,7 +1375,9 @@ after that many seconds of idle time."
 	;; Restore buffer list order with new buffer at end. Don't change
 	;; the order for old desktop files (old desktop module behavior).
 	(unless (< desktop-file-version 206)
-	  (mapc 'bury-buffer buffer-list)
+	  (dolist (buf buffer-list)
+            (and (buffer-live-p buf)
+                 (bury-buffer buf)))
 	  (when result (bury-buffer result)))
 	(when result
 	  (unless (or desktop-first-buffer (< desktop-file-version 206))
-- 
2.39.5