[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Emacs-diffs] master dba9bc9: Refine multi-hop specs in Tramp
From: |
Michael Albinus |
Subject: |
[Emacs-diffs] master dba9bc9: Refine multi-hop specs in Tramp |
Date: |
Wed, 9 Nov 2016 14:34:57 +0000 (UTC) |
branch: master
commit dba9bc9752f62c782853c7a652e84e33f0649c3b
Author: Michael Albinus <address@hidden>
Commit: Michael Albinus <address@hidden>
Refine multi-hop specs in Tramp
* lisp/net/tramp.el (tramp-tramp-file-p): Suppress "/:" and "/c:".
* test/lisp/net/tramp-tests.el
(tramp-test01-file-name-syntax): Multi-hop specs don't need a
method. "/h:" is allowed on non MS Windows.
---
lisp/net/tramp.el | 5 +++++
test/lisp/net/tramp-tests.el | 13 ++++++++-----
2 files changed, 13 insertions(+), 5 deletions(-)
diff --git a/lisp/net/tramp.el b/lisp/net/tramp.el
index 8a81311..00ecb37 100644
--- a/lisp/net/tramp.el
+++ b/lisp/net/tramp.el
@@ -1146,6 +1146,11 @@ entry does not exist, return nil."
"Return t if NAME is a string with Tramp file name syntax."
(save-match-data
(and (stringp name)
+ ;; No "/:" and "/c:". This is not covered by `tramp-file-name-regexp'.
+ (not (string-match
+ (if (memq system-type '(cygwin windows-nt))
+ "^/[[:alpha:]]?:" "^/:")
+ name))
(string-match tramp-file-name-regexp name))))
(defun tramp-find-method (method user host)
diff --git a/test/lisp/net/tramp-tests.el b/test/lisp/net/tramp-tests.el
index 5d9d3a0..4c3b83c 100644
--- a/test/lisp/net/tramp-tests.el
+++ b/test/lisp/net/tramp-tests.el
@@ -185,6 +185,8 @@ handled properly. BODY shall not contain a timeout."
(should (tramp-tramp-file-p
"/method1:address@hidden|method2:address@hidden:"))
(should (tramp-tramp-file-p
"/method1:address@hidden|method2:address@hidden|method3:address@hidden:"))
+ (should (tramp-tramp-file-p "/host1|host2:"))
+ (should (tramp-tramp-file-p "/address@hidden|address@hidden:"))
;; No strings.
(should-not (tramp-tramp-file-p nil))
@@ -193,12 +195,13 @@ handled properly. BODY shall not contain a timeout."
(should-not (tramp-tramp-file-p "/::"))
(should-not (tramp-tramp-file-p "/:@:"))
(should-not (tramp-tramp-file-p "/:[]:"))
- ;; Multihops require a method.
- (should-not (tramp-tramp-file-p "/host1|host2:"))
;; Methods or hostnames shall be at least two characters on MS Windows.
- (when (memq system-type '(cygwin windows-nt))
- (should-not (tramp-tramp-file-p "/c:/path/to/file"))
- (should-not (tramp-tramp-file-p "/c::/path/to/file"))))
+ (let ((system-type 'windows-nt))
+ (should-not (tramp-tramp-file-p "/c:/path/to/file"))
+ (should-not (tramp-tramp-file-p "/c::/path/to/file")))
+ (let ((system-type 'gnu/linux))
+ (should (tramp-tramp-file-p "/h:/path/to/file"))
+ (should (tramp-tramp-file-p "/m::/path/to/file"))))
(ert-deftest tramp-test02-file-name-dissect ()
"Check remote file name components."
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Emacs-diffs] master dba9bc9: Refine multi-hop specs in Tramp,
Michael Albinus <=