From 65a61154d8e801ae3ff12f6e5903a5baf321761e Mon Sep 17 00:00:00 2001 From: Lars Ingebrigtsen Date: Wed, 9 Feb 2022 09:32:24 +0100 Subject: [PATCH] Make calendar-exit actually respect the KILL parameter * lisp/calendar/calendar.el (calendar-exit): Really kill off all the buffers (if requested) (bug#53870). --- lisp/calendar/calendar.el | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) 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). -- 2.39.5