From: Stephen Berman Date: Sun, 28 May 2017 20:52:05 +0000 (+0200) Subject: Make sure exiting todo-mode buffer buries it (bug#27121) X-Git-Tag: emacs-26.0.90~521^2~244 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=d76c0078986b72bd83741f16f4db83c1b31de520;p=emacs.git Make sure exiting todo-mode buffer buries it (bug#27121) This failed due to commit ea3ae33b from 2013-05-16, which prevented quitting todo-mode buffer after visiting todo-archive buffer from making the archive buffer current again. Avoid this now by simply killing the archive buffer, since there's no need to keep it a live buffer. Consequently, quitting a todo-mode buffer can now use bury-buffer without an argument, which ensures that is will not becomes current on quitting the buffer that replaced it in the window. * lisp/calendar/todo-mode.el (todo-quit): Kill todo-archive-mode buffer instead of burying it. This now allows exiting the todo-mode buffer by bury-buffer without an argument, so do that. --- diff --git a/lisp/calendar/todo-mode.el b/lisp/calendar/todo-mode.el index 5d4fcf8fcbf..8155a4241a7 100644 --- a/lisp/calendar/todo-mode.el +++ b/lisp/calendar/todo-mode.el @@ -820,14 +820,10 @@ buries it and restores state as needed." (message "There is no todo file for this archive"))) ;; When todo-check-file runs in todo-show, it kills the ;; buffer if the archive file was deleted externally. - (when (buffer-live-p buf) (bury-buffer buf))) + (when (buffer-live-p buf) (kill-buffer buf))) ((eq major-mode 'todo-mode) (todo-save) - ;; If we just quit archive mode, just burying the buffer - ;; in todo-mode would return to archive. - (set-window-buffer (selected-window) - (set-buffer (other-buffer))) - (bury-buffer buf))))) + (bury-buffer))))) ;; ----------------------------------------------------------------------------- ;;; Navigation between and within categories