GNU bug report logs - #14030
24.3; expand-file-name expands remote file name on Windows incorrectly

Previous Next

Package: emacs;

Reported by: Vida Gábor <vidagabor <at> gmail.com>

Date: Fri, 22 Mar 2013 15:21:01 UTC

Severity: normal

Found in version 24.3

Done: Lars Ingebrigtsen <larsi <at> gnus.org>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: Michael Albinus <michael.albinus <at> gmx.de>
To: Eli Zaretskii <eliz <at> gnu.org>
Cc: Vida Gábor <vidagabor <at> gmail.com>, 14030 <at> debbugs.gnu.org
Subject: bug#14030: 24.3; expand-file-name expands remote file name on Windows incorrectly
Date: Sat, 23 Mar 2013 13:13:37 +0100
Eli Zaretskii <eliz <at> gnu.org> writes:

> This is due to some change in Tramp, specifically in
> tramp-sh-file-name-handler: it returned "/ssh:user <at> host:/" in 24.2,
> but "/ssh:user <at> host:c:/" in 24.3.  Michael, could you please take a
> look?

This is competely strange. In `tramp-sh-handle-expand-file-name', there
is the following code at the very end:

      (let ((directory-sep-char ?/)
	    (default-directory (tramp-compat-temporary-file-directory)))
	(tramp-make-tramp-file-name
	 method user host
	 (tramp-drop-volume-letter
	  (tramp-run-real-handler
	   'expand-file-name (list localname)))
	 hop)))))

In Emacs 24.3, `tramp-drop-volume-letter' is not executed:

| | | | 5 -> tramp-run-real-handler: operation=expand-file-name args=("/root/")
| | | | 5 <- tramp-run-real-handler: "c:/root/"
| | | | 5 -> tramp-make-tramp-file-name: method="plink" user=nil host="ford" localname="c:/root/" hop=nil
| | | | 5 <- tramp-make-tramp-file-name: "/plink:ford:c:/root/"

When I use Emacs 24.3.50, the latest snapshot, that function is
executed:

| | | | 5 -> (tramp-run-real-handler expand-file-name ("/root/"))
| | | | 5 <- tramp-run-real-handler: "c:/root/"
| | | | 5 -> (tramp-drop-volume-letter "c:/root/")
| | | | 5 <- tramp-drop-volume-letter: "/root/"
| | | | 5 -> (tramp-make-tramp-file-name "plink" nil "ford" "/root/" nil)
| | | | 5 <- tramp-make-tramp-file-name: "/plink:ford:/root/"

I have no idea, what prevents `tramp-drop-volume-letter' to be called.
If you want to reproduce my test, I have setup the traces like this:

(require 'tramp)
(require 'trace)
(dolist (elt (all-completions "tramp-" obarray 'functionp))
  (trace-function-background (intern elt)))

(expand-file-name "/plink:ford:")

Best regards, Michael.




This bug report was last modified 4 years and 260 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.