]> git.eshelyaron.com Git - emacs.git/commitdiff
Support passing signals like 'SIGCODE' to 'tramp-signal-process'
authorJim Porter <jporterbugs@gmail.com>
Sun, 14 Jul 2024 22:07:28 +0000 (15:07 -0700)
committerEshel Yaron <me@eshelyaron.com>
Wed, 17 Jul 2024 21:45:49 +0000 (23:45 +0200)
POSIX specifies that "kill" should take signal names without the "SIG"
prefix.

* lisp/net/tramp.el (tramp-signal-process): Strip the "SIG" prefix when
present.

(cherry picked from commit 68b7806c319f282c0882fa9167752d1ac385163d)

lisp/net/tramp.el

index 69a8361e6e5941d6bfbd82a7665b30a813d25d36..b4577ea3bca80b3ea048b318585d5147d534ee2f 100644 (file)
@@ -6975,8 +6975,13 @@ SIGCODE may be an integer, or a symbol whose name is a signal name."
       (setq pid process
             vec (and (stringp remote) (tramp-dissect-file-name remote))))
      (t (signal 'wrong-type-argument (list #'processp process))))
-    (unless (or (numberp sigcode) (symbolp sigcode))
-      (signal 'wrong-type-argument (list #'numberp sigcode)))
+    (cond
+     ((symbolp sigcode)
+      (setq sigcode (upcase (symbol-name sigcode)))
+      (when (string-prefix-p "SIG" sigcode)
+        (setq sigcode (substring sigcode 3))))
+     ((not (numberp sigcode))
+      (signal 'wrong-type-argument (list #'numberp sigcode))))
     ;; If it's a Tramp process, send SIGCODE remotely.
     (when (and pid vec)
       (tramp-message