From: Michael Albinus Date: Fri, 6 Aug 2010 14:34:23 +0000 (+0200) Subject: * net/tramp.el (tramp-handle-start-file-process ): Set connection X-Git-Tag: emacs-pretest-24.0.90~104^2~275^2~438^2~49^2~42 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=d00fa9b65e158e77c05cd0d64c2e3e4107de2080;p=emacs.git * net/tramp.el (tramp-handle-start-file-process ): Set connection property "vec". (tramp-process-sentinel): Use it for flushing the cache. We cannot do it via the process buffer, the buffer could be deleted already when running the sentinel. --- diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 67ff0d92079..b5d7984c04f 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,4 +1,12 @@ -2010-08-06 Jürgen Hötzel +2010-08-06 Michael Albinus + + * net/tramp.el (tramp-handle-start-file-process ): Set connection + property "vec". + (tramp-process-sentinel): Use it for flushing the cache. We + cannot do it via the process buffer, the buffer could be deleted + already when running the sentinel. + +2010-08-06 Jürgen Hötzel (tiny change) * comint.el (comint-mode): Make directory tracking functions functional on remote files. (Bug#6764) diff --git a/lisp/net/tramp.el b/lisp/net/tramp.el index 65713580b1b..a9870823f80 100644 --- a/lisp/net/tramp.el +++ b/lisp/net/tramp.el @@ -4506,10 +4506,10 @@ beginning of local filename are not substituted." (defun tramp-process-sentinel (proc event) "Flush file caches." (unless (memq (process-status proc) '(run open)) - (with-current-buffer (process-buffer proc) - (with-parsed-tramp-file-name default-directory nil - (tramp-message v 5 "Sentinel called: `%s' `%s'" proc event) - (tramp-flush-directory-property v ""))))) + (let ((vec (tramp-get-connection-property proc "vector" nil))) + (when vec + (tramp-message vec 5 "Sentinel called: `%s' `%s'" proc event) + (tramp-flush-directory-property vec ""))))) ;; We use BUFFER also as connection buffer during setup. Because of ;; this, its original contents must be saved, and restored once @@ -4556,6 +4556,7 @@ beginning of local filename are not substituted." v 'file-error "pty association is not supported for `%s'" name))) (let ((p (tramp-get-connection-process v))) ;; Set sentinel and query flag for this process. + (tramp-set-connection-property p "vector" v) (set-process-sentinel p 'tramp-process-sentinel) (tramp-set-process-query-on-exit-flag p t) ;; Return process.