From 5221ccb96e8dde4c0c3164f9517aa7b54e539d0d Mon Sep 17 00:00:00 2001 From: Martin Rudalics Date: Mon, 28 May 2012 11:48:29 +0200 Subject: [PATCH] Ugly fix for bug#11556. * desktop.el (desktop-read): Clear previous and next buffers for all windows and bury *Messages* buffer (bug#11556). --- lisp/ChangeLog | 5 +++++ lisp/desktop.el | 12 ++++++++++++ 2 files changed, 17 insertions(+) diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 5b27dcfb52e..2ebff3d0eed 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,3 +1,8 @@ +2012-05-28 Martin Rudalics + + * desktop.el (desktop-read): Clear previous and next buffers for + all windows and bury *Messages* buffer (bug#11556). + 2012-05-18 Eli Zaretskii * mail/sendmail.el (mail-yank-region): Recognize diff --git a/lisp/desktop.el b/lisp/desktop.el index 674ce72dba3..ce3efb09a74 100644 --- a/lisp/desktop.el +++ b/lisp/desktop.el @@ -1022,6 +1022,18 @@ Using it may cause conflicts. Use it anyway? " owner))))) (format ", %d to restore lazily" (length desktop-buffer-args-list)) "")) + ;; Bury the *Messages* buffer to not reshow it when burying + ;; the buffer we switched to above. + (when (buffer-live-p (get-buffer "*Messages*")) + (bury-buffer "*Messages*")) + ;; Clear all windows' previous and next buffers, these have + ;; been corrupted by the `switch-to-buffer' calls in + ;; `desktop-restore-file-buffer' (bug#11556). This is a + ;; brute force fix and should be replaced by a more subtle + ;; strategy eventually. + (walk-window-tree (lambda (window) + (set-window-prev-buffers window nil) + (set-window-next-buffers window nil))) t)) ;; No desktop file found. (desktop-clear) -- 2.39.2