Subject: bug#66382: 29.1; Prefixed find-file-at-point fails when ido-mode is active.

From: Stéphane Soppera <[email-masked]>
Date: Mon, 16 Oct 2023 11:51:47 +0200

Thanks for the fix!
Since there was no question in the previous message I hesitated commenting
again.

On Sat, Oct 14, 2023 at 9:32 AM Eli Zaretskii <[email-masked]> wrote:

> > Cc: [email-masked]
> > Date: Sat, 07 Oct 2023 09:47:56 +0300
> > From: Eli Zaretskii <[email-masked]>
> >
> > > Date: Fri, 6 Oct 2023 20:41:39 +0200
> > > From:  Stéphane Soppera via "Bug reports for GNU Emacs,
> > >  the Swiss army knife of text editors" <[email-masked]>
> > >
> > > Recipe to reproduce:
> > >
> > >   emacs -Q
> > >   M-x ido-mode
> > >   M-x ffap-bindings
> > >   C-u M-x find-file-at-point RET
> > >
> > > (any file can be used; the default `~/` on Unix works)
> > >
> > > This fails with:
> > >
> > >   apply: Wrong number of arguments: #<subr ido--ffap-find-file>, 2
> > >
> > > After doing M-x toggle-debug-on-error, the full stack is:
> > >
> > >   Debugger entered--Lisp error: (wrong-number-of-arguments #<subr
> ido--ffap-find-file> 2)
> > >       ido--ffap-find-file("~/" t)
> > >       apply(ido--ffap-find-file ("~/" t))
> > >       #f(advice ido--ffap-find-file :override find-file)("~/" t)
> > >       funcall-interactively(#f(advice ido--ffap-find-file :override
> find-file) "~/" t)
> > >       find-file-at-point()
> > >       funcall-interactively(find-file-at-point)
> > >       command-execute(find-file-at-point record)
> > >       execute-extended-command((4) "find-file-at-point" nil)
> > >       funcall-interactively(execute-extended-command (4)
> "find-file-at-point" nil)
> > >       command-execute(execute-extended-command)
> > >
> > > This regression seems to come from `(call-interactively
> > > ffap-file-finder)` with `(advice ido--ffap-find-file :override
> > > find-file)`. Since `ido--ffap-find-file` is not interactive, the
> > > `interactive` of `find-file` is used, which uses `find-file-read-args`
> > > which returns two arguments and not simply one.
> > >
> > > The function `ido--ffap-find-file` was added to fix bug #50279.
> >
> > Thanks, should be fixed now on the emacs-29 branch.
>
> No further comments in a week, so I conclude the bug was indeed
> solved, and I'm closing it.
>

-- 
Stéphane