From: Michael Albinus Date: Mon, 11 Dec 2017 08:36:23 +0000 (+0100) Subject: Make tramp-interrupt-process more robust X-Git-Tag: emacs-26.0.91~166 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=6a6e8e6e8d56fb8c4798ccfbabdf1f34d8857692;p=emacs.git Make tramp-interrupt-process more robust * lisp/net/tramp.el (tramp-interrupt-process): Fall back to the default implementation if there's no success. --- diff --git a/lisp/net/tramp.el b/lisp/net/tramp.el index 2fdc651a372..1695eea06cc 100644 --- a/lisp/net/tramp.el +++ b/lisp/net/tramp.el @@ -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)