[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#41099: 28.0.50; TRAMP process-file ignores exit status of remote pro
From: |
Philipp Stephani |
Subject: |
bug#41099: 28.0.50; TRAMP process-file ignores exit status of remote process |
Date: |
Wed, 6 May 2020 19:57:53 +0200 |
Am Mi., 6. Mai 2020 um 19:56 Uhr schrieb Philipp Stephani
<p.stephani2@gmail.com>:
>
> Am Mi., 6. Mai 2020 um 19:30 Uhr schrieb Michael Albinus
> <michael.albinus@gmx.de>:
> >
> > Philipp Stephani <p.stephani2@gmail.com> writes:
> >
> > Hi Philipp,
> >
> > >> As a second step, consider also translating signals: if the exit code
> > >> is > 128, subtract 128 and return an appropriate string, like
> > >> call-process does.
> > >
> > > Try
> > > (call-process "bash" nil nil nil "-c" "kill -SYS $$")
> > > "Bad system call"
> >
> > I see. Hmm, this would require to install a trap handler in the remote
> > shell, and to add a mechanism transferring its result back to
> > Tramp. Don't know whether this is worth the effort.
>
> That wouldn't work because Bash translates signals from subprocesses:
>
> $ bash -c 'kill -SYS $$'; echo $?
> Bad system call (core dumped)
> 159
>
> The 159 here is 128 + the signal number.
What I suggest here would be something like the following:
(defun tramp-process-file (...)
(let ((code (...original code...)))
(if (> code 128)
;; Probably a signal
(format "Signal %d" (- code 128))
code))
- bug#41099: 28.0.50; TRAMP process-file ignores exit status of remote process, (continued)
- bug#41099: 28.0.50; TRAMP process-file ignores exit status of remote process, Philipp Stephani, 2020/05/05
- bug#41099: 28.0.50; TRAMP process-file ignores exit status of remote process, Michael Albinus, 2020/05/05
- bug#41099: 28.0.50; TRAMP process-file ignores exit status of remote process, Michael Albinus, 2020/05/06
- bug#41099: 28.0.50; TRAMP process-file ignores exit status of remote process, Philipp Stephani, 2020/05/06
- bug#41099: 28.0.50; TRAMP process-file ignores exit status of remote process, Philipp Stephani, 2020/05/06
- bug#41099: 28.0.50; TRAMP process-file ignores exit status of remote process, Michael Albinus, 2020/05/06
- bug#41099: 28.0.50; TRAMP process-file ignores exit status of remote process, Michael Albinus, 2020/05/06
- bug#41099: 28.0.50; TRAMP process-file ignores exit status of remote process, Philipp Stephani, 2020/05/06
- bug#41099: 28.0.50; TRAMP process-file ignores exit status of remote process, Michael Albinus, 2020/05/06
- bug#41099: 28.0.50; TRAMP process-file ignores exit status of remote process, Philipp Stephani, 2020/05/06
- bug#41099: 28.0.50; TRAMP process-file ignores exit status of remote process,
Philipp Stephani <=
- bug#41099: 28.0.50; TRAMP process-file ignores exit status of remote process, Michael Albinus, 2020/05/06
- bug#41099: 28.0.50; TRAMP process-file ignores exit status of remote process, Michael Albinus, 2020/05/07
- bug#41099: 28.0.50; TRAMP process-file ignores exit status of remote process, Philipp Stephani, 2020/05/09
- bug#41099: 28.0.50; TRAMP process-file ignores exit status of remote process, Noam Postavsky, 2020/05/13
- bug#41099: 28.0.50; TRAMP process-file ignores exit status of remote process, Michael Albinus, 2020/05/14
- bug#41099: 28.0.50; TRAMP process-file ignores exit status of remote process, Philipp Stephani, 2020/05/14
- bug#41099: 28.0.50; TRAMP process-file ignores exit status of remote process, Andreas Schwab, 2020/05/14
- bug#41099: 28.0.50; TRAMP process-file ignores exit status of remote process, Noam Postavsky, 2020/05/14
- bug#41099: 28.0.50; TRAMP process-file ignores exit status of remote process, Philipp Stephani, 2020/05/14
- bug#41099: 28.0.50; TRAMP process-file ignores exit status of remote process, Michael Albinus, 2020/05/14