On Sat, Mar 25, 2023, 13:20 Eli Zaretskii <eliz@gnu.org> wrote:
> From: João Távora <joaotavora@gmail.com>
> Date: Sat, 25 Mar 2023 13:04:24 +0000
> Cc: "Philip K." <philipk@posteo.net>, 62417@debbugs.gnu.org
>
> On Sat, Mar 25, 2023, 12:55 Eli Zaretskii <eliz@gnu.org> wrote:.
>
>  >
>  > So it is most clearly a regression.
>
>  There's something missing in the above description, since
>  buffer-match-p accepts a function as its CONDITION argument, and calls
>  that function with the buffer and ACTION.  So it sounds like code
>  written for Emacs 28 should still work.  What is missing here that
>  explains the breakage?
>
> As I highlighted, Emacs used to call such functions with a buffer _name_ and an action. Now it calls them
> with a buffer _object_ and an action.

No, buffer-match-p accepts a buffer object _or_ a buffer name as its
first argument.

Second argument.

But you're confused: this is not about buffer-match-p's arguments. It's about the arguments to the function that you may also pass to buffer-match-p in it's first CONDITION argument. Use my simple recipe in both Emacs 28 and 29.

João