Subject: bug#65414: closed (Re: bug#65414: save-some-buffers-functions are unexpectedly called when save-some-buffers pred is non-nil)

From: [email-masked] (GNU bug Tracking System)
Date: Mon, 04 Sep 2023 16:00:03 +0000

Your bug report

#65414: save-some-buffers-functions are unexpectedly called when save-some-buffers pred is non-nil

which was filed against the emacs package, has been closed.

The explanation is attached below, along with your original report.
If you require more details, please reply to [email-masked].

-- 
65414: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=65414
GNU Bug Tracking System
Contact [email-masked] with problems

Subject: Re: bug#65414: save-some-buffers-functions are unexpectedly called when save-some-buffers pred is non-nil
From: Eli Zaretskii <[email-masked]>
To: Joseph Turner <[email-masked]>
Cc: [email-masked], [email-masked], [email-masked]
Date: Mon, 04 Sep 2023 18:59:22 +0300
List-Id: <debbugs-submit.debbugs.gnu.org>

> Date: Mon, 04 Sep 2023 08:54:52 -0700
> From: Joseph Turner <[email-masked]>
> CC: [email-masked], [email-masked], [email-masked]
> 
> 
> 
> On September 4, 2023 3:53:24 AM PDT, Eli Zaretskii <[email-masked]> wrote:
> >Does this mean we can close this issue without any changes to the
> >save-some-buffers-functions machinery?
> 
> That's fine by me, yes.

Done.

> Thank you for taking the time to walk me through to a solution!!

You are welcome.

Subject: save-some-buffers-functions are unexpectedly called when save-some-buffers pred is non-nil
From: Joseph Turner <[email-masked]>
To: [email-masked]
Cc: [email-masked]
Date: Sun, 20 Aug 2023 21:06:54 -0700
List-Id: <debbugs-submit.debbugs.gnu.org>

Functions which are added to save-some-buffers-functions are always
called when save-some-buffers runs, even when a PRED argument is
specified. This leads to unexpected behavior when PRED is intended to
limit saving buffers to a specific set of file buffers, as in Magit's
magit-save-repository-buffers function.

abbrev--possibly-save is added to save-some-buffers-functions by default
now, so whenever magit-save-repository-buffers runs, Emacs prompts to
save unsaved abbrevs (as well any other functions in the list).

I propose that we pass along the PRED argument of save-some-buffers to
each of save-some-buffers-functions, allowing them to determine what is
appropriate to do. Alternatively, we could pass along the return value
of files--buffers-needing-to-be-saved, which is a list of buffers.

Thoughts?

Joseph