[Top][All Lists]
[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 `//'