Subject: bug#2686 closed by Glenn Morris <[email-masked]> (Re: bug#2686: tramp-file-name-handler)

From: [email-masked] (Emacs bug Tracking System)
Date: Wed, 18 Mar 2009 20:45:05 +0000

This is an automatic notification regarding your bug report
which was filed against the emacs package:

#2686: tramp-file-name-handler

It has been closed by Glenn Morris <[email-masked]>.

Their explanation is attached below along with your original report.
If this explanation is unsatisfactory and you have not received a
better one in a separate message then please contact Glenn Morris <[email-masked]> by
replying to this email.

-- 
2686: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=2686
Emacs Bug Tracking System
Contact [email-masked] with problems

Subject: Re: bug#2686: tramp-file-name-handler
From: Glenn Morris <[email-masked]>
To: [email-masked]
Date: Wed, 18 Mar 2009 16:38:43 -0400

Tom Hughes wrote:

> In emacs 22.3 any attempt to tab complete a local filename in a buffer 
> which is visiting a remote file using tramp results in a "Not a tramp 
> file name" error.
>
> In other words if I just do C-x C-f to load a file, and starting a local 
> filename without first killing the minibuffer contents, then I get that 
> error if I hit tab to do completion.

Thanks. I can see this in emacs 22.3, but it seems to be already fixed
in the current CVS trunk, so will be fixed in Emacs 23.1.

Subject: tramp-file-name-handler
From: Tom Hughes <[email-masked]>
To: [email-masked]
Date: Mon, 16 Mar 2009 11:35:47 +0000

In emacs 22.3 any attempt to tab complete a local filename in a buffer 
which is visiting a remote file using tramp results in a "Not a tramp 
file name" error.

In other words if I just do C-x C-f to load a file, and starting a local 
filename without first killing the minibuffer contents, then I get that 
error if I hit tab to do completion.

The reason for this is the addition of a call to substitute-in-file-name 
at the top of tramp-file-name-handler. This was intended to expand 
environment variables but has the side effect of removing the tramp 
filename from the start of the buffer leaving just a local filename.

When that value is then passed to with-parsed-tramp-file-name it raises 
the error when it tries to dissect the name.

I guess the solution is to check the foreign flag before making the call 
to with-parsed-tramp-file-name and if it is not set to just pass the 
operation on?

Tom

-- 
Tom Hughes ([email-masked])
http://www.compton.nu/