bug-coreutils
[Top][All Lists]
Advanced

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

Re: ls: write error: Broken pipe


From: Jim Meyering
Subject: Re: ls: write error: Broken pipe
Date: Fri, 09 Nov 2007 11:59:50 +0100

Jim Meyering <address@hidden> wrote:

> Dan Nicolaescu <address@hidden> wrote:
> ...
>>   > Have you tried changing your login shell to bash?
>>
>> Yeah, changing the login shell to bash works.
>> But so does running bash from tcsh and running tcsh from that bash.
>
> I've tried setting my shell to tcsh (tcsh-6.15-1.fc8)
> but still can't get it to fail the way it does for you.
> Have you tried moving aside all of your ~/.??* files?
> Maybe one of those is causing the trouble.
>
> If you can reproduce it with an empty home directory,
> at least we'll know it something specific to tcsh itself and/or
> start-up files it reads from somewhere other than your home dir.
>
> Are you beginning to see why some people prefer not to use tcsh? :-)

Here's a more direct way to test tcsh's sighandler.  Run this:

    perl -le 'print $SIG{PIPE}'

When I start tcsh from an environment where SIGPIPE is ignored,
(which is where you see the troubling behavior) it prints "IGNORE":

    bash$ (trap '' PIPE; tcsh)
    tcsh$ seq 900000|head -1
    1
    seq: write error: Broken pipe
    tcsh$ perl -le 'print $SIG{PIPE}'
    IGNORE

With zsh-4.3.4 on debian unstable, I get this (and no diagnostic from seq):

    zsh$ perl -le 'print $SIG{PIPE}'
    Use of uninitialized value in print at -e line 1.

With rawhide's zsh-4.3.4-4.fc8, I get this:

    zsh$ perl -le 'print $SIG{PIPE}'

    zsh$

Hmm... I wonder why the small difference?  Both are perl-5.8.8.
Probably irrelevant.

If you could reproduce the problem by starting tcsh manually,
I'd suggest debugging (or just using strace) tcsh to see where
it's misbehaving.




reply via email to

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