summaryrefslogtreecommitdiff
path: root/lisp
diff options
context:
space:
mode:
authorChong Yidong <cyd@stupidchicken.com>2007-02-28 01:35:20 +0000
committerChong Yidong <cyd@stupidchicken.com>2007-02-28 01:35:20 +0000
commitcd00d0a053b5d3c24ceb78b18e8fd306a243c95e (patch)
tree096ee71fd90005d4034c7f65027fe3a3e8ef6dba /lisp
parent17282c9b75cd70dfd2a33c85a9384dcccc651c8b (diff)
downloademacs-cd00d0a053b5d3c24ceb78b18e8fd306a243c95e.tar.gz
(tramp-file-name-handler): Inhibit modification hooks to avoid
confusion when combining after-change calls.
Diffstat (limited to 'lisp')
-rw-r--r--lisp/net/tramp.el7
1 files changed, 6 insertions, 1 deletions
diff --git a/lisp/net/tramp.el b/lisp/net/tramp.el
index 602c6d25eaa..73cab23d1d9 100644
--- a/lisp/net/tramp.el
+++ b/lisp/net/tramp.el
@@ -4348,7 +4348,12 @@ Falls back to normal file name handler if no tramp file name handler exists."
(save-match-data
(let* ((filename (apply 'tramp-file-name-for-operation operation args))
(completion (tramp-completion-mode filename))
- (foreign (tramp-find-foreign-file-name-handler filename)))
+ (foreign (tramp-find-foreign-file-name-handler filename))
+ ;; If combine-after-change-calls is t, it is possible to
+ ;; get Emacs into a confused state since the backend
+ ;; handlers can scribble to temp buffers, e.g. through
+ ;; format-spec. So we ignore all modification hooks.
+ (inhibit-modification-hooks t))
(with-parsed-tramp-file-name filename nil
(cond
;; When we are in completion mode, some operations shouldn' be