emacs-diffs
[Top][All Lists]
Advanced

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

[Emacs-diffs] master b4486de: Minor fixes in Tramp


From: Michael Albinus
Subject: [Emacs-diffs] master b4486de: Minor fixes in Tramp
Date: Sun, 17 Dec 2017 05:33:14 -0500 (EST)

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

    Minor fixes in Tramp
    
    * lisp/net/tramp-archive.el
    (tramp-archive-handle-temporary-file-directory): New defun.
    (tramp-archive-file-name-handler-alist): Use it.
    
    * test/lisp/net/tramp-archive-tests.el
    (tramp-archive-test99-libarchive-tests): Rename it.
    
    * test/lisp/net/tramp-tests.el (tramp-test34-vc-registered):
    Skip for older Emacsen.
---
 lisp/net/tramp-archive.el            | 10 +++++++++-
 test/lisp/net/tramp-archive-tests.el |  6 +++++-
 test/lisp/net/tramp-tests.el         |  8 +++-----
 3 files changed, 17 insertions(+), 7 deletions(-)

diff --git a/lisp/net/tramp-archive.el b/lisp/net/tramp-archive.el
index cfd68fb..d3b2712 100644
--- a/lisp/net/tramp-archive.el
+++ b/lisp/net/tramp-archive.el
@@ -245,7 +245,7 @@ It must be supported by libarchive(3).")
     (shell-command . tramp-archive-handle-not-implemented)
     (start-file-process . tramp-archive-handle-not-implemented)
     ;; `substitute-in-file-name' performed by default handler.
-    ;; `temporary-file-directory' performed by default handler.
+    (temporary-file-directory . tramp-archive-handle-temporary-file-directory)
     (unhandled-file-name-directory . ignore)
     (vc-registered . ignore)
     (verify-visited-file-modtime . tramp-handle-verify-visited-file-modtime)
@@ -530,6 +530,14 @@ offered."
   (load
    (tramp-archive-gvfs-file-name file) noerror nomessage nosuffix must-suffix))
 
+(defun tramp-archive-handle-temporary-file-directory ()
+  "Like `temporary-file-directory' for Tramp files."
+  ;; If the default directory, the file archive, is located on a
+  ;; mounted directory, it is returned as it.  Not what we want.
+  (with-parsed-tramp-archive-file-name default-directory nil
+    (let ((default-directory (file-name-directory archive)))
+      (temporary-file-directory))))
+
 (defun tramp-archive-handle-not-implemented (operation &rest args)
   "Generic handler for operations not implemented for file archives."
   (let ((v (ignore-errors
diff --git a/test/lisp/net/tramp-archive-tests.el 
b/test/lisp/net/tramp-archive-tests.el
index 2c9f56e..464eb6c 100644
--- a/test/lisp/net/tramp-archive-tests.el
+++ b/test/lisp/net/tramp-archive-tests.el
@@ -19,6 +19,9 @@
 
 ;;; Code:
 
+;; The `tramp-archive-testnn-*' tests correspond to the respective
+;; tests in tramp-tests.el.
+
 (require 'ert)
 (require 'tramp-archive)
 
@@ -206,6 +209,7 @@ variables, so we check the Emacs version directly."
 This checks also `file-name-as-directory', `file-name-directory',
 `file-name-nondirectory' and `unhandled-file-name-directory'."
   (skip-unless tramp-gvfs-enabled)
+
   (should
    (string-equal
     (directory-file-name "/foo.tar/path/to/file") "/foo.tar/path/to/file"))
@@ -734,7 +738,7 @@ This tests also `file-executable-p', `file-writable-p' and 
`set-file-modes'."
                 (zerop (nth 1 fsi))
                 (zerop (nth 2 fsi))))))
 
-(ert-deftest tramp-archive-test41-libarchive-tests ()
+(ert-deftest tramp-archive-test99-libarchive-tests ()
   "Run tests of libarchive test files."
   :tags '(:expensive-test)
   (skip-unless tramp-gvfs-enabled)
diff --git a/test/lisp/net/tramp-tests.el b/test/lisp/net/tramp-tests.el
index 41687e4..5a52059 100644
--- a/test/lisp/net/tramp-tests.el
+++ b/test/lisp/net/tramp-tests.el
@@ -3783,11 +3783,9 @@ This tests also `make-symbolic-link', `file-truename' 
and `add-name-to-file'."
                  (vc-register
                   (list (car vc-handled-backends)
                         (list (file-name-nondirectory tmp-name2))))
-               ;; `vc-register' has changed its arguments in Emacs 25.1.
-               (error
-                (vc-register
-                 nil (list (car vc-handled-backends)
-                           (list (file-name-nondirectory tmp-name2))))))
+               ;; `vc-register' has changed its arguments in Emacs
+               ;; 25.1.  Let's skip it for older Emacsen.
+               (error (skip-unless (>= emacs-major-version 25))))
              ;; vc-git uses an own process sentinel, Tramp's sentinel
              ;; for flushing the cache isn't used.
              (dired-uncache (concat (file-remote-p default-directory) "/"))



reply via email to

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