Mercurial > emacs
changeset 105523:54704a452681
* net/tramp.el (tramp-file-name-real-user, tramp-file-name-domain)
(tramp-file-name-real-host, tramp-file-name-port): Apply
`save-match-data.
author | Michael Albinus <michael.albinus@gmx.de> |
---|---|
date | Thu, 08 Oct 2009 15:19:56 +0000 |
parents | 695dbf5b3bb9 |
children | e781cac84553 |
files | lisp/net/tramp.el |
diffstat | 1 files changed, 27 insertions(+), 23 deletions(-) [+] |
line wrap: on
line diff
--- a/lisp/net/tramp.el Thu Oct 08 15:18:15 2009 +0000 +++ b/lisp/net/tramp.el Thu Oct 08 15:19:56 2009 +0000 @@ -3905,11 +3905,11 @@ (while (string-match "//" localname) (setq localname (replace-match "/" t t localname))) ;; No tilde characters in file name, do normal - ;; expand-file-name (this does "/./" and "/../"). We bind - ;; `directory-sep-char' here for XEmacs on Windows, which - ;; would otherwise use backslash. `default-directory' is - ;; bound, because on Windows there would be problems with UNC - ;; shares or Cygwin mounts. + ;; `expand-file-name' (this does "/./" and "/../"). We bind + ;; `directory-sep-char' here for XEmacs on Windows, which would + ;; otherwise use backslash. `default-directory' is bound, + ;; because on Windows there would be problems with UNC shares or + ;; Cygwin mounts. (let ((directory-sep-char ?/) (default-directory (tramp-compat-temporary-file-directory))) (tramp-make-tramp-file-name @@ -7296,35 +7296,39 @@ ;; "user%domain". Sometimes, we must extract these parts. (defun tramp-file-name-real-user (vec) "Return the user name of VEC without domain." - (let ((user (tramp-file-name-user vec))) - (if (and (stringp user) - (string-match tramp-user-with-domain-regexp user)) - (match-string 1 user) - user))) + (save-match-data + (let ((user (tramp-file-name-user vec))) + (if (and (stringp user) + (string-match tramp-user-with-domain-regexp user)) + (match-string 1 user) + user)))) (defun tramp-file-name-domain (vec) "Return the domain name of VEC." - (let ((user (tramp-file-name-user vec))) - (and (stringp user) - (string-match tramp-user-with-domain-regexp user) - (match-string 2 user)))) + (save-match-data + (let ((user (tramp-file-name-user vec))) + (and (stringp user) + (string-match tramp-user-with-domain-regexp user) + (match-string 2 user))))) ;; The host part of a Tramp file name vector can be of kind ;; "host#port". Sometimes, we must extract these parts. (defun tramp-file-name-real-host (vec) "Return the host name of VEC without port." - (let ((host (tramp-file-name-host vec))) - (if (and (stringp host) - (string-match tramp-host-with-port-regexp host)) - (match-string 1 host) - host))) + (save-match-data + (let ((host (tramp-file-name-host vec))) + (if (and (stringp host) + (string-match tramp-host-with-port-regexp host)) + (match-string 1 host) + host)))) (defun tramp-file-name-port (vec) "Return the port number of VEC." - (let ((host (tramp-file-name-host vec))) - (and (stringp host) - (string-match tramp-host-with-port-regexp host) - (string-to-number (match-string 2 host))))) + (save-match-data + (let ((host (tramp-file-name-host vec))) + (and (stringp host) + (string-match tramp-host-with-port-regexp host) + (string-to-number (match-string 2 host)))))) (defun tramp-tramp-file-p (name) "Return t if NAME is a Tramp file."