Subject: bug#53870: calendar-exit doesn't kill calendar buffers

From: Juri Linkov <[email-masked]>
Date: Tue, 08 Feb 2022 09:39:24 +0200

[This is a separate bug report from bug#53764.]

>> The only case when I see the diary file is when quitting Calendar
>> leaves the diary buffer floating in the buffer list, so every time after
>> using Calendar have to visit the diary buffer and manually kill it.
>
> That buffer is included in `calendar-buffer-list', so `calendar-exit'
> calls `quit-window' on that buffer.  So you could have
> `quit-window-hook' kill the buffer, I guess?

The problem is that when the KILL arg of calendar-exit is non-nil,
it still doesn't kill calendar buffers.

When calendar-setup is non-nil, it doesn't kill all calendar buffers
because ‘(quit-window kill w)’ is called only on windows, but not on
non-displayed buffers.

When calendar-setup is nil, it doesn't kill all calendar buffers
because ‘(quit-windows-on b kill)’ never kills non-displayed buffers.