[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Emacs-diffs] master 19fbef5: Fix Bug#34196
From: |
Michael Albinus |
Subject: |
[Emacs-diffs] master 19fbef5: Fix Bug#34196 |
Date: |
Wed, 6 Feb 2019 03:07:49 -0500 (EST) |
branch: master
commit 19fbef549a94ccf733367d29438204e94a00e911
Author: Michael Albinus <address@hidden>
Commit: Michael Albinus <address@hidden>
Fix Bug#34196
* lisp/autorevert.el (auto-revert-buffers): Handle buffers with a
remote default-directory only, when they are connected. (Bug#34196)
* lisp/net/tramp-rclone.el (tramp-rclone-maybe-open-connection):
* lisp/net/tramp-sudoedit.el (tramp-sudoedit-maybe-open-connection):
Set "connected" property.
* lisp/net/tramp.el (tramp-process-actions): Revert change from
2019-02-04. Bug#34196 will be solved in autorevert.el.
---
lisp/autorevert.el | 10 ++++++++++
lisp/net/tramp-rclone.el | 6 +++++-
lisp/net/tramp-sudoedit.el | 5 ++++-
lisp/net/tramp.el | 20 +++++++-------------
4 files changed, 26 insertions(+), 15 deletions(-)
diff --git a/lisp/autorevert.el b/lisp/autorevert.el
index 16a742a..150693b 100644
--- a/lisp/autorevert.el
+++ b/lisp/autorevert.el
@@ -767,6 +767,16 @@ the timer when no buffers need to be checked."
(buffer-list)
auto-revert-buffer-list))
remaining new)
+ ;; Buffers with remote contents shall be reverted only if the
+ ;; connection is established already.
+ (setq bufs (delq nil
+ (mapcar
+ (lambda (buf)
+ (with-current-buffer buf
+ (and (or (not (file-remote-p default-directory))
+ (file-remote-p default-directory nil t))
+ buf)))
+ bufs)))
;; Partition `bufs' into two halves depending on whether or not
;; the buffers are in `auto-revert-remaining-buffers'. The two
;; halves are then re-joined with the "remaining" buffers at the
diff --git a/lisp/net/tramp-rclone.el b/lisp/net/tramp-rclone.el
index 48adea0..3a0e002 100644
--- a/lisp/net/tramp-rclone.el
+++ b/lisp/net/tramp-rclone.el
@@ -568,7 +568,11 @@ connection if a previous connection has died for some
reason."
;; This could be nil.
,(tramp-get-method-parameter vec 'tramp-mount-args))))
(while (not (file-exists-p (tramp-make-tramp-file-name vec 'localname)))
- (tramp-cleanup-connection vec 'keep-debug 'keep-password)))))
+ (tramp-cleanup-connection vec 'keep-debug 'keep-password))
+
+ ;; Mark it as connected.
+ (tramp-set-connection-property
+ (tramp-get-connection-process vec) "connected" t))))
;; In `tramp-check-cached-permissions', the connection properties
;; "{uid,gid}-{integer,string}" are used. We set them to proper values.
diff --git a/lisp/net/tramp-sudoedit.el b/lisp/net/tramp-sudoedit.el
index 80c63c1..04b0beb 100644
--- a/lisp/net/tramp-sudoedit.el
+++ b/lisp/net/tramp-sudoedit.el
@@ -785,7 +785,10 @@ connection if a previous connection has died for some
reason."
(set-process-query-on-exit-flag p nil)
;; Set connection-local variables.
- (tramp-set-connection-local-variables vec))
+ (tramp-set-connection-local-variables vec)
+
+ ;; Mark it as connected.
+ (tramp-set-connection-property p "connected" t))
;; In `tramp-check-cached-permissions', the connection properties
;; "{uid,gid}-{integer,string}" are used. We set them to proper values.
diff --git a/lisp/net/tramp.el b/lisp/net/tramp.el
index 82d2e5a..d000bbe 100644
--- a/lisp/net/tramp.el
+++ b/lisp/net/tramp.el
@@ -4060,23 +4060,17 @@ performed successfully. Any other value means an
error."
(save-restriction
(with-tramp-progress-reporter
proc 3 "Waiting for prompts from remote shell"
- ;; `global-auto-revert-mode' could activate remote operations
- ;; while we aren't ready. We disable it temporarily.
- (let ((garm (bound-and-true-p global-auto-revert-mode))
- exit)
- (when garm (global-auto-revert-mode -1))
- (unwind-protect
- (if timeout
- (with-timeout (timeout (setq exit 'timeout))
- (while (not exit)
- (setq exit
- (catch 'tramp-action
- (tramp-process-one-action proc vec actions)))))
+ (let (exit)
+ (if timeout
+ (with-timeout (timeout (setq exit 'timeout))
(while (not exit)
(setq exit
(catch 'tramp-action
(tramp-process-one-action proc vec actions)))))
- (when garm (global-auto-revert-mode)))
+ (while (not exit)
+ (setq exit
+ (catch 'tramp-action
+ (tramp-process-one-action proc vec actions)))))
(with-current-buffer (tramp-get-connection-buffer vec)
(widen)
(tramp-message vec 6 "\n%s" (buffer-string)))
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Emacs-diffs] master 19fbef5: Fix Bug#34196,
Michael Albinus <=