diff options
author | Michael Albinus <michael.albinus@gmx.de> | 2011-11-16 22:32:46 +0100 |
---|---|---|
committer | Michael Albinus <michael.albinus@gmx.de> | 2011-11-16 22:32:46 +0100 |
commit | d0c8fc8abb5891d11b17a0b97f6fce0b066bb6cc (patch) | |
tree | a710044184b92118ecf6232ed337299c1ff7f11a /lisp/net/tramp-cache.el | |
parent | 9d0cfcd67ddcfb664cef507b76dd439b3b7de805 (diff) | |
download | emacs-d0c8fc8abb5891d11b17a0b97f6fce0b066bb6cc.tar.gz |
* net/tramp.el (tramp-handle-file-truename): Cache only the local
file name.
* net/tramp-cache.el (tramp-flush-file-property): Flush also
properties of linked files. (Bug#9879)
Diffstat (limited to 'lisp/net/tramp-cache.el')
-rw-r--r-- | lisp/net/tramp-cache.el | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/lisp/net/tramp-cache.el b/lisp/net/tramp-cache.el index b35ca3bbd18..56087a3aef6 100644 --- a/lisp/net/tramp-cache.el +++ b/lisp/net/tramp-cache.el @@ -162,6 +162,11 @@ FILE must be a local file name on a connection identified via VEC." ;;;###tramp-autoload (defun tramp-flush-file-property (vec file) "Remove all properties of FILE in the cache context of VEC." + ;; Remove file property of symlinks. + (let ((truename (tramp-get-file-property vec file "file-truename" nil))) + (when (and (stringp truename) + (not (string-equal file truename))) + (tramp-flush-file-property vec truename))) ;; Unify localname. (setq vec (copy-sequence vec)) (aset vec 3 (tramp-run-real-handler 'directory-file-name (list file))) |