[Python-Dev] SIGPIPE => SIG_IGN? (original) (raw)
Gustavo Niemeyer gustavo at niemeyer.net
Sat Sep 10 01:47:09 CEST 2005
- Previous message: [Python-Dev] Python 3 executable name (was: Re: PEP 3000 and iterators)
- Next message: [Python-Dev] SIGPIPE => SIG_IGN?
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Greetings,
I was wondering, why are we setting SIGPIPE to SIG_IGN in initsigs():
static void initsigs(void) { #ifdef SIGPIPE PyOS_setsig(SIGPIPE, SIG_IGN); #endif [...] }
One of the side effects is:
os.system("yes | read any") yes: standard output: Broken pipe yes: write error 0 os.system("yes | head -1") y yes: standard output: Broken pipe yes: write error 0
That stops when setting to SIG_DFL:
signal.signal(signal.SIGPIPE, signal.SIG_DFL) 1 os.system("yes | head -1") y 0 os.system("yes | read any") 0
Out of curiosity, many of the google results for "yes: standard output: Broken pipe" are from Python programs. :-)
Regards,
-- Gustavo Niemeyer http://niemeyer.net
- Previous message: [Python-Dev] Python 3 executable name (was: Re: PEP 3000 and iterators)
- Next message: [Python-Dev] SIGPIPE => SIG_IGN?
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]