[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#61024: 29.0.60; [PATCH] Eshell errors out when trying to redirect ou
From: |
Michael Albinus |
Subject: |
bug#61024: 29.0.60; [PATCH] Eshell errors out when trying to redirect output of a remote process |
Date: |
Mon, 23 Jan 2023 16:50:14 +0100 |
User-agent: |
Gnus/5.13 (Gnus v5.13) |
Eli Zaretskii <eliz@gnu.org> writes:
Hi,
>> ~ $ cd /sudo::
>> /sudo:root@host:~ # *echo hi there > #<foo>
>> Wrong type argument: "bufferp echo-stderr"
>>
>> (Any other Tramp method should reproduce this issue.) That's because the
>> echo command is being redirected to two places: stdout is going to the
>> buffer "foo", and stderr is going to the Eshell buffer (via a pipe
>> process). However, that doesn't work for Tramp processes.
>>
>> Attached is a fix with a test. I think this should definitely go in
>> Emacs 29, since it's a pretty bad regression.
>
> Fine by me, unless Michael objects or has better ideas.
Pipe processes are always tricky for Tramp. I *believe* redirecting
stdout and stderr to different buffers shall work, see "test6" of
tramp-test30-make-process. But I remember also that this was painful to
implement and test.
>> I'm actually surprised no one has filed a bug on this already.
>
> Maybe it tells us how many people use this combination?
So do we want to reopen this can of worms, and see what happens with
Tramp? But perhaps it is a problem in Eshell, which tries to create its
own pipe process?
Best regards, Michael.