tramp-devel
[Top][All Lists]
Advanced

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

Re: tramp (2.1.7); 2.1.7 - revert-buffer gives "tramp-flush-file-propert


From: Jonathan Hankins
Subject: Re: tramp (2.1.7); 2.1.7 - revert-buffer gives "tramp-flush-file-property: Wrong type argument: stringp, nil"
Date: Thu, 19 Oct 2006 22:58:01 -0500
User-agent: Gnus/5.110004 (No Gnus v0.4) Emacs/21.4 (gnu/linux)

Michael,

Thanks for getting back to me so quickly.  Replies below:

Michael Albinus <address@hidden> writes:

> Could you, please, check the location of Tramp in both cases when / when not
> compiled:

Compiled: 
  Library is file /usr/local/share/emacs/site-lisp/tramp-cache.elc

Not compiled:
  Library is file /usr/local/share/emacs/site-lisp/tramp-cache.el

> OK, that's clear, it's inside `tramp-cache-before-revert-function', which
> calls `tramp-flush-file-property' with the parameters (nil nil).  But the code
> is so short I cannot see the problem. So I'ld like to wait for your check
> above. When there are no new evidences, we (you :-) must either debug that
> function, or I'll give you some trace messages to be inserted there.

I played with it for a while in the debugger and think I found the problem.  I
thought maybe something was getting optimized away by the byte compiler, so I
set the "Byte Optimize" custom option to "none" and re-compiled
tramp-cache.el.  Still fails.  Then I looked at "apropos optimize" and saw
that, once tramp is loaded, the variables "cl-optimize-safety" and
"cl-optimize-speed" are both defined and set to 1.  I set "cl-optimize-speed"
to 0, re-compiled tramp-cache.el, and restarted.  Now, revert-buffer works
correctly.  When stepping through the non-compiled tramp-cache.el, I noticed
some cl-* functions or macros being called in "tramp-flush-file-property", so
maybe cl-optimize-speed is optimizing something out?  When I step through the
byte-compiled version, and cl-optimize-speed was set to 1, mush of the call
stack that I see in the non-compiled version is missing, and I just go
straight to tramp-flush-file-property(nil nil).

FWIW, the cl.el from my Ubuntu emacs21-el package is 2.02.

Hope this helps,

-Jonathan





reply via email to

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