ignore(SIGPIPE) in gsm


While tracking down some stupid problem with dpkg on my debian system
(every dpkg program which called gzip through pipe fails with error in
gzip broken pipe) I noticed some strange behavior. If I run program from
xterm started by enlightenment, behavior is normal. On the other hand,
if I start program from gnome-session, or panel started xterm every now
and then gzip started from pipe by other program fails with broken pipe
error. I didn't understand the error, but I could track differences in
environment for this two behaviors. I noticed that my shell in
likely_to_fail behavior has SIGPIPE ignored. Then I tracked down this
difference to find out that enlightenment removes ignore flag from
sigpipe in some kind of SignalSetup routine during initialization phase.
This ignore flag on SIGPIPE is set by gsm, but without explanation in
Changelog or anywhere else.

So, the question is: should gsm set ignore on SIGPIPE, and force every
other app like gnome-terminal, panel, etc. to deal with it, or the other
way around.

P.S. This tracking down included around 50 hours of repeating work on
debugging everything from kernel to X, using strace, gdb , /proc you
mention it, so if it stays that way better document it on the first page
of gnome-intro.


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