This is the mail archive of the cygwin mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Regression (last snapshot)


On Jul 29 13:35, Ken Brown wrote:
> On 7/29/2019 9:18 AM, Ken Brown wrote:
> > On 7/29/2019 4:45 AM, Corinna Vinschen wrote:
> >>    Did you try to reproduce this under
> >> strace?
> > 
> > Yes, but there I get an error (even under mintty) for a different reason:
> > 
> > $ strace -o trace.out ls -lL <(grep bash .bashrc)
> > ls: cannot access '/dev/fd/63': No such file or directory
> > 
> > The strace output shows a call to fhandler_process::exists on /proc/45036/fd/63;
> > here 45036 is the PID of 'ls'.  And then I see an EBADF error.  But I think
> > what's happening here might be that bash is parsing '<(grep bash .bashrc)' too
> > soon, so that '/dev/fd/63' isn't related to the 'ls' command.
> > 
> > By the way, I've just tried a different experiment, in which I simplify the ls
> > command to 'ls <(grep bash .bashrc)'.  When I run this under xterm, I get the
> > broken pipe error 98% of the time or more.  But it's fine under mintty.
> 
> I think I may have more-or-less figured out what's going on.  The "broken pipe" 
> error simply means that ls has exited before grep has finished writing.  So grep 
> is writing to a pipe that has no readers.  If I replace 'ls' by 'cat', I don't 
> get any errors.

Yeah, but it's mainly because this got started wrongly.  bash needs to run
under strace as well, otherwise you don't have the connection to the process
actually creating the fifo.  My previous reply wasn't very clear on that,
sorry.


Corinna

-- 
Corinna Vinschen
Cygwin Maintainer

Attachment: signature.asc
Description: PGP signature


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]