From 3d35fb2636c665cf57013509c9f2abdbf0038a1a Mon Sep 17 00:00:00 2001 From: Jim Porter Date: Sun, 14 Jul 2024 15:07:28 -0700 Subject: [PATCH] Support passing signals like 'SIGCODE' to 'tramp-signal-process' 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 | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/lisp/net/tramp.el b/lisp/net/tramp.el index 69a8361e6e5..b4577ea3bca 100644 --- a/lisp/net/tramp.el +++ b/lisp/net/tramp.el @@ -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 -- 2.39.5