summaryrefslogtreecommitdiff
path: root/lisp/autorevert.el
diff options
context:
space:
mode:
authorMichael Albinus <michael.albinus@gmx.de>2009-08-02 17:21:16 +0000
committerMichael Albinus <michael.albinus@gmx.de>2009-08-02 17:21:16 +0000
commit3eedbc8523aca1258d66a28ded72fc518ec5fca9 (patch)
tree3b1e480e5f81e596aaa7b3be0481cd75373ce0c6 /lisp/autorevert.el
parent736ac90f598e706aab1c84c52e707d6cafd167b0 (diff)
downloademacs-3eedbc8523aca1258d66a28ded72fc518ec5fca9.tar.gz
* autorevert.el (auto-revert-handler): Allow
`auto-revert-tail-mode' for remote files.
Diffstat (limited to 'lisp/autorevert.el')
-rw-r--r--lisp/autorevert.el18
1 files changed, 12 insertions, 6 deletions
diff --git a/lisp/autorevert.el b/lisp/autorevert.el
index ab133af00f1..81d9fbf55c0 100644
--- a/lisp/autorevert.el
+++ b/lisp/autorevert.el
@@ -66,6 +66,7 @@
;; change by growing at the end. It only appends the new output,
;; instead of reverting the entire buffer. It does so even if the
;; buffer contains unsaved changes. (Because they will not be lost.)
+;; Auto Revert Tail Mode works also for remote files.
;; Usage:
;;
@@ -432,13 +433,18 @@ This is an internal function used by Auto-Revert Mode."
(let* ((buffer (current-buffer)) size
(revert
(or (and buffer-file-name
- (not (file-remote-p buffer-file-name))
(file-readable-p buffer-file-name)
(if auto-revert-tail-mode
- (/= auto-revert-tail-pos
- (setq size
- (nth 7 (file-attributes buffer-file-name))))
- (not (verify-visited-file-modtime buffer))))
+ ;; Tramp caches the file attributes. Setting
+ ;; `tramp-cache-inhibit' forces Tramp to
+ ;; reread the values.
+ (let ((tramp-cache-inhibit-cache t))
+ (/= auto-revert-tail-pos
+ (setq size
+ (nth 7 (file-attributes
+ buffer-file-name)))))
+ (and (not (file-remote-p buffer-file-name))
+ (not (verify-visited-file-modtime buffer)))))
(and (or auto-revert-mode
global-auto-revert-non-file-buffers)
revert-buffer-function
@@ -477,7 +483,7 @@ This is an internal function used by Auto-Revert Mode."
(when (or revert auto-revert-check-vc-info)
(vc-find-file-hook)))))
-(defun auto-revert-tail-handler (size)
+(defun auto-revert-tail-handler (size)
(let ((modified (buffer-modified-p))
(inhibit-read-only t) ; Ignore.
(file buffer-file-name)