]> git.eshelyaron.com Git - emacs.git/commitdiff
Avoid infinitly looping in tramp-interrupt-process (bug#35506)
authorJohn Shahid <jvshahid@gmail.com>
Wed, 15 May 2019 14:29:58 +0000 (16:29 +0200)
committerMichael Albinus <michael.albinus@gmx.de>
Wed, 15 May 2019 14:29:58 +0000 (16:29 +0200)
* lisp/net/tramp.el (tramp-interrupt-process): Remove with-timeout.
Instead pass a timeout to tramp-accept-process-output.
tramp-accept-process-output stops timers from running which makes the
with-timeout ineffective.

lisp/net/tramp.el

index 0a3129fd454e66050bbf2147941794b8e7c98110..2aa62eba80e9423faa0d021b13ef89b915de5227 100644 (file)
@@ -4861,10 +4861,9 @@ Only works for Bourne-like shells."
         (format "kill -2 -%d" pid))
        ;; Wait, until the process has disappeared.  If it doesn't,
        ;; fall back to the default implementation.
-       (with-timeout (1 (ignore))
-         (while (tramp-accept-process-output proc))
-         ;; Report success.
-         proc)))))
+        (and (tramp-accept-process-output proc 1)
+            ;; Report success.
+            proc)))))
 
 ;; `interrupt-process-functions' exists since Emacs 26.1.
 (when (boundp 'interrupt-process-functions)