tramp-devel
[Top][All Lists]
Advanced

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

Re: problems with tramp 2.0.12 and 2.0.24 on xemacs


From: Bruce Lowekamp
Subject: Re: problems with tramp 2.0.12 and 2.0.24 on xemacs
Date: Fri, 04 Oct 2002 17:31:32 -0400


--On Friday, October 04, 2002 10:37:21 PM +0200 Kai Großjohann <address@hidden> wrote:

Bruce Lowekamp <address@hidden> writes:

It eventually works down to the root directory, where it stays in an
infinite loop:
tramp: Finding true name for `/[ssh/grid.cs.wm.edu]/'
tramp: True name of `/[ssh/grid.cs.wm.edu]/' is `'
tramp: Finding true name for `/[ssh/grid.cs.wm.edu]/../'
tramp: Check /..
tramp: file attributes with perl: /[ssh/grid.cs.wm.edu]/..
tramp: Processing step `..'
tramp: True name of `/[ssh/grid.cs.wm.edu]/../' is `'
tramp: Finding true name for `/[ssh/grid.cs.wm.edu]/'
tramp: True name of `/[ssh/grid.cs.wm.edu]/' is `'
tramp: Finding true name for `/[ssh/grid.cs.wm.edu]/../'
tramp: Check /..

Please try this patch.  If it doesn't help, it should at least change
that output.  (The *debug tramp/foo* buffer would be useful, if it
doesn't work.)

Index: tramp.el
===================================================================
RCS file: /cvsroot/tramp/tramp/lisp/tramp.el,v
retrieving revision 2.237
retrieving revision 2.238
diff -u -u -r2.237 -r2.238
--- tramp.el    3 Oct 2002 21:47:40 -0000       2.237
+++ tramp.el    4 Oct 2002 20:35:29 -0000       2.238
@@ -1907,14 +1907,17 @@
       (when (>= numchase numchase-limit)
        (error "Maximum number (%d) of symlinks exceeded" numchase-limit))
       (setq result (reverse result))
+      ;; Combine list to form string.
+      (setq result
+           (if result
+               (mapconcat 'identity (cons "" result) "/")
+             "/"))
+      (when is-dir (setq result (concat result "/")))
       (tramp-message-for-buffer
        multi-method method user host
-       10 "True name of `%s' is `%s'"
-       filename (mapconcat 'identity (cons "" result) "/"))
+       10 "True name of `%s' is `%s'" filename result)
       (tramp-make-tramp-file-name
-       multi-method method user host
-       (concat (mapconcat 'identity (cons "" result) "/")
-              (if is-dir "/" ""))))))
+       multi-method method user host result))))

 ;; Basic functions.



kai
--
~/.signature is: umop ap!sdn    (Frank Nobis)



Thanks for the help, Kai and Thomas. No solution yet, but I will summarize what I've tried.

I suspect Thomas is right that jde is looking for a prj.el file. Unfortunately, from my reading of the jde documentation I think it looks for all prj.el files in any directory above the current. So having one prj.el file doesn't stop it from looking higher in the path. It definitely didn't solve the problem.

find-file-visit-truename is already set to nil

I applied the patch to the 2.0.12 version that comes with the xemacs package, since there aren't any other issues with that package (that I've run into). It doesn't seem to solve the problem, though. (I thought that the "truename is "//" seemed a bit strange, so I did try to set result to "/" if it was "//", but that didn't help either, so I took it out.)

To get a simpler error, I put a java file in /tmp, set tramp-debug-buffer to t and visited the java file in /tmp. Eventually it exits on (in the message log):

tramp: file attributes with perl: /[ssh/grid.cs.wm.edu]/..
tramp: Processing step `..'
tramp: True name of `/[ssh/grid.cs.wm.edu]/../' is `//'
tramp: Finding true name for `/[ssh/grid.cs.wm.edu]/'
tramp: True name of `/[ssh/grid.cs.wm.edu]/' is `//'
tramp: Finding true name for `/[ssh/grid.cs.wm.edu]/../'
tramp: Check /..
File mode specification error: (error "Lisp nesting exceeds `max-lisp-eval-depth'")

Following is a bit of what appears in the debug log starting from right after the succesful file transfer. Any further help on this would be appreciated. I'm happy to provide further debug info if you can tell me what I need to run or change to generate it. I don't know how to force xemacs to give me a backtrace to see what the actual call chain was that caused this when it exits on eval-depth. I think I set the "backtrace on error" option, but it didn't seem to have an effect.

Thanks again,
Bruce


tramp_exit_status 0
# Decoding remote file /[ssh/grid.cs.wm.edu]/tmp/Interface.java...
# Decoding remote file /[ssh/grid.cs.wm.edu]/tmp/Interface.java with function base64-decode-region...
# Decoding remote file /[ssh/grid.cs.wm.edu]/tmp/Interface.java...done
$ test -e /tmp/Interface.java 2>/dev/null; echo tramp_exit_status $?
tramp_exit_status 0
# file attributes with perl: /[ssh/grid.cs.wm.edu]/tmp/Interface.java
$ tramp_file_attributes /tmp/Interface.java
(nil 1 501 501 (15774 1573) (15774 1522) (15774 1522) 20176 33152 t (3 . 32897) (0 2304))
# Inserting local temp file `/tmp/lowekamp/tramp.8pADr2'...
$ test -e /tmp/Interface.java 2>/dev/null; echo tramp_exit_status $?
tramp_exit_status 0
# file attributes with perl: /[ssh/grid.cs.wm.edu]/tmp/Interface.java
$ tramp_file_attributes /tmp/Interface.java
(nil 1 501 501 (15774 1573) (15774 1522) (15774 1522) 20176 33152 t (3 . 32897) (0 2304))
$ test -e /tmp/Interface.java 2>/dev/null; echo tramp_exit_status $?
tramp_exit_status 0
$ test -w /tmp/Interface.java 2>/dev/null; echo tramp_exit_status $?
tramp_exit_status 0
$ test -e /tmp/ 2>/dev/null; echo tramp_exit_status $?
tramp_exit_status 0
$ test -w /tmp/ 2>/dev/null; echo tramp_exit_status $?
tramp_exit_status 0
$ test -e /tmp/\#Interface.java\# 2>/dev/null; echo tramp_exit_status $?
tramp_exit_status 1
$ test -e /tmp/ 2>/dev/null; echo tramp_exit_status $?
tramp_exit_status 0
$ test -w /tmp/ 2>/dev/null; echo tramp_exit_status $?
tramp_exit_status 0
$ cd /tmp/ 2>/dev/null; echo tramp_exit_status $?
tramp_exit_status 0
$ /bin/ls -a | cat
.
..
.fam_socket
.font-unix
ftp-copy-log
gsrvdir501
.ICE-unix
Interface.java
mazang-web100-config
orbit-lowekamp
orbit-mazang
orbit-root
ssh-XXbPJJjR
ssh-XXCkXuNh
ssh-XXem6Qpe
ssh-XXKoylAI
ssh-XXrXPelR
ssh-XXU82eMg
.X0-lock
.X11-unix
$ cd
$ test -r /tmp/ 2>/dev/null; echo tramp_exit_status $?
tramp_exit_status 0
$ test -r / 2>/dev/null; echo tramp_exit_status $?
tramp_exit_status 0
# Finding true name for `/[ssh/grid.cs.wm.edu]/tmp/'
# Check /tmp
$ test -e /tmp 2>/dev/null; echo tramp_exit_status $?
tramp_exit_status 0
# file attributes with perl: /[ssh/grid.cs.wm.edu]/tmp
$ tramp_file_attributes /tmp
(t 15 0 0 (15774 1578) (15774 1549) (15774 1549) 4096 17407 t (3 . 29185) (0 2304))
# True name of `/[ssh/grid.cs.wm.edu]/tmp/' is `/tmp/'
$ cd / 2>/dev/null; echo tramp_exit_status $?
tramp_exit_status 0
$ /bin/ls -a | cat
.
..
.autofsck
bin
boot
dev
etc
home
initrd
lib
lost+found
mnt
opt
proc
root
sbin
tmp
usr
var
$ cd
$ test -r / 2>/dev/null; echo tramp_exit_status $?
tramp_exit_status 0
$ test -r /../ 2>/dev/null; echo tramp_exit_status $?
tramp_exit_status 0
# Finding true name for `/[ssh/grid.cs.wm.edu]/'
# True name of `/[ssh/grid.cs.wm.edu]/' is `//'
$ cd /../ 2>/dev/null; echo tramp_exit_status $?
tramp_exit_status 0
$ /bin/ls -a | cat
.
..
.autofsck
bin
boot
dev
etc
home
initrd
lib
lost+found
mnt
opt
proc
root
sbin
tmp
usr
var
$ cd
$ test -r /../ 2>/dev/null; echo tramp_exit_status $?
tramp_exit_status 0
$ test -r / 2>/dev/null; echo tramp_exit_status $?
tramp_exit_status 0
# Finding true name for `/[ssh/grid.cs.wm.edu]/../'
# Check /..
$ test -e /.. 2>/dev/null; echo tramp_exit_status $?
tramp_exit_status 0
# file attributes with perl: /[ssh/grid.cs.wm.edu]/..
$ tramp_file_attributes /..
(t 18 0 0 (15774 1578) (15705 20920) (15705 20920) 4096 16877 t (0 . 2) (0 2304))
# Processing step `..'
# True name of `/[ssh/grid.cs.wm.edu]/../' is `//'
$ cd / 2>/dev/null; echo tramp_exit_status $?
tramp_exit_status 0
$ /bin/ls -a | cat
.
..
.autofsck
bin
boot
dev
etc
home
initrd
lib
lost+found
mnt
opt
proc
root
sbin
tmp
usr
var
$ cd
$ test -r / 2>/dev/null; echo tramp_exit_status $?
tramp_exit_status 0
$ test -r /../ 2>/dev/null; echo tramp_exit_status $?
tramp_exit_status 0
# Finding true name for `/[ssh/grid.cs.wm.edu]/'
# True name of `/[ssh/grid.cs.wm.edu]/' is `//'









reply via email to

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