From: Lars Ingebrigtsen Date: Wed, 9 Feb 2022 08:32:24 +0000 (+0100) Subject: Make calendar-exit actually respect the KILL parameter X-Git-Tag: emacs-29.0.90~2410 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=65a61154d8e801ae3ff12f6e5903a5baf321761e;p=emacs.git Make calendar-exit actually respect the KILL parameter * lisp/calendar/calendar.el (calendar-exit): Really kill off all the buffers (if requested) (bug#53870). --- diff --git a/lisp/calendar/calendar.el b/lisp/calendar/calendar.el index 48d308afade..7804ce0ee94 100644 --- a/lisp/calendar/calendar.el +++ b/lisp/calendar/calendar.el @@ -1861,7 +1861,9 @@ concatenated and the result truncated." buffs)) (defun calendar-exit (&optional kill) - "Get out of the calendar window and hide it and related buffers." + "Get out of the calendar window and hide it and related buffers. +If KILL (interactively, the prefix), kill the buffers instead of +hiding them." (interactive "P") (let ((diary-buffer (get-file-buffer diary-file)) (calendar-buffers (calendar-buffer-list))) @@ -1880,7 +1882,12 @@ concatenated and the result truncated." (iconify-frame (window-frame w))) (quit-window kill w)))) (dolist (b calendar-buffers) - (quit-windows-on b kill)))))) + (quit-windows-on b kill))) + ;; Finally, kill non-displayed buffers (if requested). + (when kill + (dolist (b calendar-buffers) + (when (buffer-live-p b) + (kill-buffer b))))))) (defun calendar-current-date (&optional offset) "Return the current date in a list (month day year).