emacs-diffs
[Top][All Lists]
Advanced

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

[Emacs-diffs] Changes to emacs/lisp/net/ange-ftp.el,v


From: Michael Albinus
Subject: [Emacs-diffs] Changes to emacs/lisp/net/ange-ftp.el,v
Date: Sun, 08 Jul 2007 18:03:21 +0000

CVSROOT:        /cvsroot/emacs
Module name:    emacs
Changes by:     Michael Albinus <albinus>       07/07/08 18:03:20

Index: net/ange-ftp.el
===================================================================
RCS file: /cvsroot/emacs/emacs/lisp/net/ange-ftp.el,v
retrieving revision 1.85
retrieving revision 1.86
diff -u -b -r1.85 -r1.86
--- net/ange-ftp.el     27 Jun 2007 21:11:04 -0000      1.85
+++ net/ange-ftp.el     8 Jul 2007 18:03:18 -0000       1.86
@@ -4132,8 +4132,15 @@
                                       (format "Getting %s" fn1))
          tmp1))))
 
-(defun ange-ftp-file-remote-p (file)
-  (ange-ftp-replace-name-component file ""))
+(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-load (file &optional noerror nomessage nosuffix)
   (if (ange-ftp-ftp-name file)
@@ -4360,7 +4367,10 @@
 ;; This returns nil for any file name as argument.
 (put 'vc-registered 'ange-ftp 'null)
 
+;; We can handle process-file in a restricted way (just for chown).
+;; Nothing possible for start-file-process.
 (put 'process-file 'ange-ftp 'ange-ftp-process-file)
+(put 'start-file-process 'ange-ftp 'ignore)
 (put 'shell-command 'ange-ftp 'ange-ftp-shell-command)
 
 ;;; Define ways of getting at unmodified Emacs primitives,




reply via email to

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