Hi Pete,

it took me a while, but now I believe I know what happens. The problem
is that XEmacs under W32 does

  (expand-file-name "/") => "d:\\"

This confuses Tramp. The appended patch (towards Tramp 2.1.13-pre)
might fix it.

Best regards, Michael.

*** /media/disk/tramp/lisp/tramp.el	Sat Feb  9 09:43:32 2008
--- /home/albinus/src/tramp/lisp/tramp.el	Tue Mar  4 14:29:28 2008
***************
*** 3501,3512 ****
  letter into the file name.  This function removes it.
  
  Doesn't do anything if the NAME does not start with a drive letter."
!   (if (and (> (length name) 1)
             (char-equal (aref name 1) ?:)
             (let ((c1 (aref name 0)))
               (or (and (>= c1 ?A) (<= c1 ?Z))
                   (and (>= c1 ?a) (<= c1 ?z)))))
!       (substring name 2)
      name))
  
  (defun tramp-handle-expand-file-name (name &optional dir)
--- 3501,3515 ----
  letter into the file name.  This function removes it.
  
  Doesn't do anything if the NAME does not start with a drive letter."
!   (if (and (stringp name)
! 	   (> (length name) 1)
             (char-equal (aref name 1) ?:)
             (let ((c1 (aref name 0)))
               (or (and (>= c1 ?A) (<= c1 ?Z))
                   (and (>= c1 ?a) (<= c1 ?z)))))
!       (if (string-match "^\\\\" (substring name 2))
! 	  (replace-match "/" nil nil (substring name 2))
! 	(substring name 2))
      name))
  
  (defun tramp-handle-expand-file-name (name &optional dir)
***************
*** 4500,4509 ****
  ;;	  (mapcar 'intern
  ;;		  (all-completions "tramp-" obarray 'functionp)))
  
!   (let ((fn (assoc operation tramp-completion-file-name-handler-alist)))
!     (if fn
! 	(save-match-data (apply (cdr fn) args))
!       (tramp-completion-run-real-handler operation args)))))
  
  ;;;###autoload
  (defsubst tramp-register-file-name-handler ()
--- 4503,4514 ----
  ;;	  (mapcar 'intern
  ;;		  (all-completions "tramp-" obarray 'functionp)))
  
!   (funcall
!    (if (eq tramp-syntax 'sep) 'tramp-drop-volume-letter 'identity)
!    (let ((fn (assoc operation tramp-completion-file-name-handler-alist)))
!      (if fn
! 	 (save-match-data (apply (cdr fn) args))
!        (tramp-completion-run-real-handler operation args))))))
  
  ;;;###autoload
  (defsubst tramp-register-file-name-handler ()
_______________________________________________
Tramp-devel mailing list
[email protected]
http://lists.gnu.org/mailman/listinfo/tramp-devel

Reply via email to