[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Lost process output in pipe between Emacs and CVS

From: Derek Robert Price
Subject: Re: Lost process output in pipe between Emacs and CVS
Date: Fri, 19 Jul 2002 15:58:23 -0400
User-agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.0.0) Gecko/20020606

Richard Stallman wrote:

   This is a different case.  CVS is invoking ssh in a child process in a
   way which causes them to share file descriptor 2.  ssh is then
   unblocking file descriptor 2 in a way which CVS does not expect.  This
   type of problem can only happen with programs which invoke ssh.

In that case, maybe CVS should have code to cope with this case.  It
must be quite common.  Perhaps CVS should avoid using stdio.  If that
is too hard, how about making CVS pipe the output through `cat' when
it invokes a subprocess?  That should be easy.

CVS'd have to pipe the child's STDERR through `cat'. Otherwise the child would still share CVS's STDERR and when that got dup'ed to CVS's STDOUT, it would share CVS's STDOUT and could set it to non-blocking and we're back to the original lost data case.

I'm part way to implementing this but it's seg faulting and I don't have the time. If nothing else comes up I'll try to debug it and have something out in the next few days.



Email: derek@2-wit.com
Public key available from www.keyserver.net - Key ID 5ECF1609
Fingerprint 511D DCD9 04CE 48A9 CC07  A421 BFBF 5CC2 56A6 AB0E

Get CVS support at http://2-wit.com
Doesn't expecting the unexpected make the unexpected become the expected?

reply via email to

[Prev in Thread] Current Thread [Next in Thread]