Function: ange-ftp-wait-not-busy
ange-ftp-wait-not-busy is a byte-compiled function defined in
ange-ftp.el.gz.
Signature
(ange-ftp-wait-not-busy PROC)
Source Code
;; Defined in /usr/src/emacs/lisp/net/ange-ftp.el.gz
;; Wait for the ange-ftp process PROC not to be busy.
(defun ange-ftp-wait-not-busy (proc)
(with-current-buffer (process-buffer proc)
(condition-case nil
;; This is a kludge to let user quit in case ftp gets hung.
;; It matters because this function can be called from the filter.
;; It is bad to allow quitting in a filter, but getting hung
;; is worse. By binding quit-flag to nil, we might avoid
;; most of the probability of getting screwed because the user
;; wants to quit some command.
(let ((quit-flag nil)
(inhibit-quit nil))
(while ange-ftp-process-busy
(accept-process-output proc)))
(quit
;; If the user does quit out of this,
;; kill the process. That stops any transfer in progress.
;; The next operation will open a new ftp connection.
(delete-process proc)
(signal 'quit nil)))))