changeset 76206:28ad759d36cf

(tramp-file-name-handler): Inhibit modification hooks to avoid confusion when combining after-change calls.
author Chong Yidong <cyd@stupidchicken.com>
date Wed, 28 Feb 2007 01:35:20 +0000
parents 1fd4f5302ed3
children fc03011abe2b
files lisp/net/tramp.el
diffstat 1 files changed, 6 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/lisp/net/tramp.el	Wed Feb 28 01:35:08 2007 +0000
+++ b/lisp/net/tramp.el	Wed Feb 28 01:35:20 2007 +0000
@@ -4348,7 +4348,12 @@
   (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