mirror of
git://git.sv.gnu.org/emacs.git
synced 2026-01-30 04:10:54 -08:00
* net/tramp.el (tramp-handle-dired-uncache): Flush directory
cache, not only file cache. (tramp-process-sentinel): New defun. (tramp-handle-start-file-process): Use it, in order to invalidate file caches.
This commit is contained in:
parent
3d15fe78eb
commit
39e1bf0b6a
2 changed files with 23 additions and 6 deletions
|
|
@ -1,3 +1,11 @@
|
|||
2010-08-05 Michael Albinus <michael.albinus@gmx.de>
|
||||
|
||||
* net/tramp.el (tramp-handle-dired-uncache): Flush directory
|
||||
cache, not only file cache.
|
||||
(tramp-process-sentinel): New defun.
|
||||
(tramp-handle-start-file-process): Use it, in order to invalidate
|
||||
file caches.
|
||||
|
||||
2010-08-03 Leo <sdl.web@gmail.com>
|
||||
|
||||
* server.el (server-start): Simplify loop.
|
||||
|
|
|
|||
|
|
@ -4234,7 +4234,7 @@ This is like `dired-recursive-delete-directory' for Tramp files."
|
|||
;; DIR-P is valid for XEmacs only.
|
||||
(with-parsed-tramp-file-name
|
||||
(if (or dir-p (file-directory-p dir)) dir (file-name-directory dir)) nil
|
||||
(tramp-flush-file-property v localname)))
|
||||
(tramp-flush-directory-property v localname)))
|
||||
|
||||
;; Pacify byte-compiler. The function is needed on XEmacs only. I'm
|
||||
;; not sure at all that this is the right way to do it, but let's hope
|
||||
|
|
@ -4503,6 +4503,14 @@ beginning of local filename are not substituted."
|
|||
(with-parsed-tramp-file-name default-directory nil
|
||||
(tramp-find-executable v command (tramp-get-remote-path v) t)))
|
||||
|
||||
(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 "")))))
|
||||
|
||||
;; We use BUFFER also as connection buffer during setup. Because of
|
||||
;; this, its original contents must be saved, and restored once
|
||||
;; connection has been setup.
|
||||
|
|
@ -4546,11 +4554,12 @@ beginning of local filename are not substituted."
|
|||
(unless (process-get (tramp-get-connection-process v) 'remote-tty)
|
||||
(tramp-error
|
||||
v 'file-error "pty association is not supported for `%s'" name)))
|
||||
;; Set query flag for this process.
|
||||
(tramp-set-process-query-on-exit-flag
|
||||
(tramp-get-connection-process v) t)
|
||||
;; Return process.
|
||||
(tramp-get-connection-process v))
|
||||
(let ((p (tramp-get-connection-process v)))
|
||||
;; Set sentinel and query flag for this process.
|
||||
(set-process-sentinel p 'tramp-process-sentinel)
|
||||
(tramp-set-process-query-on-exit-flag p t)
|
||||
;; Return process.
|
||||
p))
|
||||
;; Save exit.
|
||||
(with-current-buffer (tramp-get-connection-buffer v)
|
||||
(if (string-match tramp-temp-buffer-name (buffer-name))
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue