diff options
author | Michael Albinus <michael.albinus@gmx.de> | 2008-07-26 18:43:51 +0000 |
---|---|---|
committer | Michael Albinus <michael.albinus@gmx.de> | 2008-07-26 18:43:51 +0000 |
commit | 6ce63faf376dee5929b533f924cbd6d62c530f8f (patch) | |
tree | dc02bd42e6bb5b0355aee9d03bb9f6a5ba1b6af2 /lisp | |
parent | 7ad8fe5e2876518a8f33b80050f98dab4ff78398 (diff) | |
download | emacs-6ce63faf376dee5929b533f924cbd6d62c530f8f.tar.gz |
* net/tramp.el (tramp-handle-start-file-process): Set
query-on-exit flag. Kill temporary buffer.
(tramp-process-sentinel): Remove defun.
(tramp-do-copy-or-rename-file-out-of-band)
(tramp-maybe-open-connection):Don't call it.
Diffstat (limited to 'lisp')
-rw-r--r-- | lisp/net/tramp.el | 26 |
1 files changed, 10 insertions, 16 deletions
diff --git a/lisp/net/tramp.el b/lisp/net/tramp.el index 17cc5938042..a9c56fa5aea 100644 --- a/lisp/net/tramp.el +++ b/lisp/net/tramp.el @@ -3311,7 +3311,6 @@ be a local filename. The method used must be an out-of-band method." (append copy-args (list source target)))))) (tramp-message v 6 "%s" (mapconcat 'identity (process-command p) " ")) - (set-process-sentinel p 'tramp-process-sentinel) (tramp-set-process-query-on-exit-flag p nil) (tramp-process-actions p v tramp-actions-copy-out-of-band)))) @@ -3680,8 +3679,7 @@ beginning of local filename are not substituted." (let ((name1 name) (i 0)) (unless buffer - ;; BUFFER can be nil. We use a temporary buffer, which is - ;; killed in `tramp-process-sentinel'. + ;; BUFFER can be nil. We use a temporary buffer. (setq buffer (generate-new-buffer tramp-temp-buffer-name))) (while (get-process name1) ;; NAME must be unique as process name. @@ -3708,12 +3706,19 @@ beginning of local filename are not substituted." (mapconcat 'tramp-shell-quote-argument (cons program args) " ")) nil t) ; nooutput + ;; Set query flag for this process. + (tramp-set-process-query-on-exit-flag + (tramp-get-connection-process v) t) ;; Return process. (tramp-get-connection-process v)) ;; Save exit. (with-current-buffer (tramp-get-connection-buffer v) - (widen) - (goto-char (point-max))) + (if (string-match tramp-temp-buffer-name (buffer-name)) + (progn + (set-process-buffer (tramp-get-connection-process v) nil) + (kill-buffer (current-buffer))) + (widen) + (goto-char (point-max)))) (tramp-set-connection-property v "process-name" nil) (tramp-set-connection-property v "process-buffer" nil)))) @@ -5753,16 +5758,6 @@ seconds. If not, it produces an error message with the given ERROR-ARGS." 'tramp-password-end-of-line) tramp-default-password-end-of-line)))) -(defun tramp-process-sentinel (proc event) - "Process sentinel for Tramp processes." - (when (memq (process-status proc) '(stop exit signal)) - (tramp-flush-connection-property proc) - ;; Asynchronous processes might have a temporary buffer. Kill it. - (let ((buf (process-buffer proc))) - (when (and (buffer-live-p buf) - (string-match tramp-temp-buffer-name (buffer-name buf))) - (kill-buffer buf))))) - (defun tramp-open-connection-setup-interactive-shell (proc vec) "Set up an interactive shell. Mainly sets the prompt and the echo correctly. PROC is the shell @@ -6306,7 +6301,6 @@ connection if a previous connection has died for some reason." vec 6 "%s" (mapconcat 'identity (process-command p) " ")) ;; Check whether process is alive. - (set-process-sentinel p 'tramp-process-sentinel) (tramp-set-process-query-on-exit-flag p nil) (tramp-message vec 3 "Waiting 60s for local shell to come up...") (tramp-barf-if-no-shell-prompt |