mirror of
https://git.savannah.gnu.org/git/emacs.git
synced 2024-11-29 07:58:28 +00:00
Make tramp-interrupt-process more robust
* lisp/net/tramp.el (tramp-interrupt-process): Fall back to the default implementation if there's no success.
This commit is contained in:
parent
5bcd468a9e
commit
6a6e8e6e8d
@ -4570,14 +4570,14 @@ Only works for Bourne-like shells."
|
||||
'tramp-send-command
|
||||
(tramp-get-connection-property proc "vector" nil)
|
||||
(format "kill -2 %d" pid))
|
||||
;; Wait, until the process has disappeared.
|
||||
(with-timeout
|
||||
(1 (tramp-error proc 'error "Process %s did not interrupt" proc))
|
||||
;; Wait, until the process has disappeared. If it doesn't,
|
||||
;; fall back to the default implementation.
|
||||
(with-timeout (1 (ignore))
|
||||
(while (process-live-p proc)
|
||||
;; We cannot run `tramp-accept-process-output', it blocks timers.
|
||||
(accept-process-output proc 0.1)))
|
||||
;; Report success.
|
||||
proc))))
|
||||
(accept-process-output proc 0.1))
|
||||
;; Report success.
|
||||
proc)))))
|
||||
|
||||
;; `interrupt-process-functions' exists since Emacs 26.1.
|
||||
(when (boundp 'interrupt-process-functions)
|
||||
|
Loading…
Reference in New Issue
Block a user