GNU bug report logs -
#66382
29.1; Prefixed find-file-at-point fails when ido-mode is active.
Previous Next
Reported by: Stéphane Soppera <soppera <at> google.com>
Date: Sat, 7 Oct 2023 01:28:02 UTC
Severity: normal
Found in version 29.1
Done: Eli Zaretskii <eliz <at> gnu.org>
Bug is archived. No further changes may be made.
Full log
View this message in rfc822 format
[Message part 1 (text/plain, inline)]
Your message dated Sat, 14 Oct 2023 10:32:58 +0300
with message-id <83jzrpslp1.fsf <at> gnu.org>
and subject line Re: bug#66382: 29.1; Prefixed find-file-at-point fails when ido-mode is active.
has caused the debbugs.gnu.org bug report #66382,
regarding 29.1; Prefixed find-file-at-point fails when ido-mode is active.
to be marked as done.
(If you believe you have received this mail in error, please contact
help-debbugs <at> gnu.org.)
--
66382: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=66382
GNU Bug Tracking System
Contact help-debbugs <at> gnu.org with problems
[Message part 2 (message/rfc822, inline)]
[Message part 3 (text/plain, inline)]
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.
In GNU Emacs 29.1 (build 1, x86_64-pc-linux-gnu, GTK+ Version 3.24.37,
cairo version 1.16.0) of 2023-09-04, modified by Debian built on
--
Stéphane SOPPERA
[Message part 4 (text/html, inline)]
[Message part 5 (message/rfc822, inline)]
> Cc: 66382 <at> debbugs.gnu.org
> Date: Sat, 07 Oct 2023 09:47:56 +0300
> From: Eli Zaretskii <eliz <at> gnu.org>
>
> > 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" <bug-gnu-emacs <at> gnu.org>
> >
> > 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.
This bug report was last modified 1 year and 276 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.