]> git.eshelyaron.com Git - emacs.git/commitdiff
* net/ange-ftp.el: (ange-ftp-file-remote-p): Handle optional
authorMichael Albinus <michael.albinus@gmx.de>
Tue, 17 Jul 2007 21:09:12 +0000 (21:09 +0000)
committerMichael Albinus <michael.albinus@gmx.de>
Tue, 17 Jul 2007 21:09:12 +0000 (21:09 +0000)
parameter IDENTIFICATION.

lisp/net/ange-ftp.el

index 3fa75102b324809111e2ca7444f103215204a826..24a30603bb989f85225daa684cfe94909bdcab09 100644 (file)
@@ -4132,15 +4132,19 @@ directory, so that Emacs will know its current contents."
                                       (format "Getting %s" fn1))
          tmp1))))
 
-(defun ange-ftp-file-remote-p (file &optional connected)
-  (and (or (not connected)
-          (let* ((parsed (ange-ftp-ftp-name file))
-                 (host (nth 0 parsed))
-                 (user (nth 1 parsed))
-                 (proc (get-process (ange-ftp-ftp-process-buffer host user))))
-            (and proc (processp proc)
-                 (memq (process-status proc) '(run open)))))
-       (ange-ftp-replace-name-component file "")))
+(defun ange-ftp-file-remote-p (file &optional identification connected)
+  (let* ((parsed (ange-ftp-ftp-name file))
+        (host (nth 0 parsed))
+        (user (nth 1 parsed)))
+    (and (or (not connected)
+            (let ((proc (get-process (ange-ftp-ftp-process-buffer host user))))
+              (and proc (processp proc)
+                   (memq (process-status proc) '(run open)))))
+        (cond
+         ((eq identification 'method) (and parsed "ftp"))
+         ((eq identification 'user) user)
+         ((eq identification 'host) host)
+         (t (ange-ftp-replace-name-component file ""))))))
 
 (defun ange-ftp-load (file &optional noerror nomessage nosuffix)
   (if (ange-ftp-ftp-name file)