[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#10085: 24.0.91; completion-pcm--find-all-completions returns wrong r

From: Michael Albinus
Subject: bug#10085: 24.0.91; completion-pcm--find-all-completions returns wrong remote file names
Date: Sat, 31 Mar 2012 14:36:15 +0200
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/24.0.94 (gnu/linux)

Stefan Monnier <address@hidden> writes:

> Still trying to figure out what's really going on inside Tramp.
> Something I bumped into along the way (still doesn't quite explain it) is:
>   (let ((non-essential t))   (file-name-nondirectory "/sudo:")) -> "sudo:"
>   (let ((non-essential nil)) (file-name-nondirectory "/sudo:")) -> ""
> I think it's wrong for those two to return different values.

That's an error, and must be fixed, for sure. The correct result must be "".

I could apply a simple fix in `tramp-find-foreign-file-name-handler',
but this breaks other functionality. Grrrr.

I fear it will take some days, until I have puzzled it out.

> `non-essential' should prevent connecting to the remote host, but here
> neither operation needs to contact the remote host.  And of course,
> things are made worse because it's not only `non-essential' that
> controls the behavior but also `last-input-event' which makes debugging
> that much more .... interesting.

Hmm, yes. This is a heuristic for older Emacsen, which don't give Tramp
a `non-essential' value. Maybe I shall change it, that in case
`non-essential' does exist, no other check is needed. But I don't know,
whether all completion packages outside core Emacs care about
`non-essential' already. We shall postpone this change to 24.2, at least.

>         Stefan

Best regards, Michael.

reply via email to

[Prev in Thread] Current Thread [Next in Thread]