Mercurial > emacs
changeset 3000:0fdd43a27e15
(ange-ftp-raw-send-cmd): Allow quitting during accept-process-output.
author | Richard M. Stallman <rms@gnu.org> |
---|---|
date | Mon, 24 May 1993 00:12:05 +0000 |
parents | 33c820044087 |
children | c6c6e476d93d |
files | lisp/ange-ftp.el |
diffstat | 1 files changed, 15 insertions(+), 3 deletions(-) [+] |
line wrap: on
line diff
--- a/lisp/ange-ftp.el Mon May 24 00:04:18 1993 +0000 +++ b/lisp/ange-ftp.el Mon May 24 00:12:05 1993 +0000 @@ -859,7 +859,7 @@ ;;;; Internal variables. ;;;; ------------------------------------------------------------ -(defconst ange-ftp-version "$Revision: 1.16 $") +(defconst ange-ftp-version "$Revision: 1.17 $") (defvar ange-ftp-data-buffer-name " *ftp data*" "Buffer name to hold directory listing data received from ftp process.") @@ -1682,7 +1682,15 @@ (save-excursion (set-buffer (process-buffer proc)) (while ange-ftp-process-busy - (accept-process-output)) + ;; 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)) + (accept-process-output))) (setq ange-ftp-process-string "" ange-ftp-process-result-line "" ange-ftp-process-busy t @@ -1708,7 +1716,11 @@ nil ;; hang around for command to complete (while ange-ftp-process-busy - (accept-process-output proc)) + ;; This is a kludge to let user quit in case ftp gets hung. + ;; It matters because this function can be called from the filter. + (let ((quit-flag nil) + (inhibit-quit nil)) + (accept-process-output proc))) (if cont nil ;cont has already been called (cons ange-ftp-process-result ange-ftp-process-result-line))))))