emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] master 89035e2 1/2: Inhibit `epa-file-handler' in Tramp


From: Michael Albinus
Subject: [Emacs-diffs] master 89035e2 1/2: Inhibit `epa-file-handler' in Tramp
Date: Mon, 25 May 2015 10:26:20 +0000

branch: master
commit 89035e247591c8d688fce922b7079881aa110f33
Author: Michael Albinus <address@hidden>
Commit: Michael Albinus <address@hidden>

    Inhibit `epa-file-handler' in Tramp
    
    Fixes: debbugs:20634
    
    * lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-via-buffer)
    (tramp-sh-handle-insert-file-contents-literally): Inhibit also
    `epa-file-handler'.
---
 lisp/net/tramp-cmds.el |    2 +-
 lisp/net/tramp-sh.el   |   10 ++++++----
 lisp/net/tramp.el      |    7 ++++---
 3 files changed, 11 insertions(+), 8 deletions(-)

diff --git a/lisp/net/tramp-cmds.el b/lisp/net/tramp-cmds.el
index 89baaa4..fee74ee 100644
--- a/lisp/net/tramp-cmds.el
+++ b/lisp/net/tramp-cmds.el
@@ -158,7 +158,7 @@ This includes password cache, file cache, connection cache, 
buffers."
   (if arg (insert tramp-version) (message tramp-version)))
 
 ;; Make the "reporter" functionality available for making bug reports about
-;; the package. A most useful piece of code.
+;; the package.  A most useful piece of code.
 
 (autoload 'reporter-submit-bug-report "reporter")
 
diff --git a/lisp/net/tramp-sh.el b/lisp/net/tramp-sh.el
index acb97e8..55ac778 100644
--- a/lisp/net/tramp-sh.el
+++ b/lisp/net/tramp-sh.el
@@ -2122,15 +2122,16 @@ FILENAME is the source file, NEWNAME the target file.
 KEEP-DATE is non-nil if NEWNAME should have the same timestamp as FILENAME."
   ;; We must disable multibyte, because binary data shall not be
   ;; converted.  We don't want the target file to be compressed, so we
-  ;; let-bind `jka-compr-inhibit' to t.
-  ;; We remove `tramp-file-name-handler' from
+  ;; let-bind `jka-compr-inhibit' to t.  `epa-file-handler' shall not
+  ;; be called either.  We remove `tramp-file-name-handler' from
   ;; `inhibit-file-name-handlers'; otherwise the file name handler for
   ;; `insert-file-contents' might be deactivated in some corner cases.
   (let ((coding-system-for-read 'binary)
        (coding-system-for-write 'binary)
        (jka-compr-inhibit t)
        (inhibit-file-name-handlers
-        (remq 'tramp-file-name-handler inhibit-file-name-handlers)))
+        (cons epa-file-handler
+              . (remq 'tramp-file-name-handler inhibit-file-name-handlers))))
     (with-temp-file newname
       (set-buffer-multibyte nil)
       (insert-file-contents-literally filename)))
@@ -3205,7 +3206,8 @@ the result will be a local, non-Tramp, file name."
         (if (fboundp 'find-buffer-file-type)
             (symbol-function 'find-buffer-file-type)
           nil))
-       (inhibit-file-name-handlers '(jka-compr-handler image-file-handler))
+       (inhibit-file-name-handlers
+        '(epa-file-handler image-file-handler jka-compr-handler))
        (inhibit-file-name-operation 'insert-file-contents))
     (unwind-protect
        (progn
diff --git a/lisp/net/tramp.el b/lisp/net/tramp.el
index 95f5449..22adbd9 100644
--- a/lisp/net/tramp.el
+++ b/lisp/net/tramp.el
@@ -3103,9 +3103,10 @@ User is always nil."
                      (setq tramp-temp-buffer-file-name nil beg nil end nil))
 
                    ;; `insert-file-contents-literally' takes care to
-                   ;; avoid calling jka-compr.  By let-binding
-                   ;; `inhibit-file-name-operation', we propagate that
-                   ;; care to the `file-local-copy' operation.
+                   ;; avoid calling jka-compr.el and epa.el.  By
+                   ;; let-binding `inhibit-file-name-operation', we
+                   ;; propagate that care to the `file-local-copy'
+                   ;; operation.
                    (setq local-copy
                          (let ((inhibit-file-name-operation
                                 (when (eq inhibit-file-name-operation



reply via email to

[Prev in Thread] Current Thread [Next in Thread]