Bugfix ... don't override handler for sigpipe if one is set.

git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@17902 72102866-910b-0410-8b05-ffd578937521
This commit is contained in:
Richard Frith-Macdonald 2003-10-16 15:48:48 +00:00
parent 77dfd1008b
commit 5c31ef0e4b
5 changed files with 43 additions and 12 deletions

View file

@ -420,11 +420,16 @@ static Class runLoopClass;
wVersionRequested = MAKEWORD(2, 0);
WSAStartup(wVersionRequested, &wsaData);
#else
void (*handler)(int);
/*
* If SIGPIPE is not ignored, we will abort on any attempt to
* write to a pipe/socket that has been closed by the other end!
* If SIGPIPE is not handled or ignored, we will abort on any attempt
* to write to a pipe/socket that has been closed by the other end!
*/
signal(SIGPIPE, SIG_IGN);
handler = signal(SIGPIPE, SIG_IGN);
if (handler != SIG_DFL)
{
signal(SIGPIPE, handler);
}
#endif
mutableArrayClass = [NSMutableArray class];
mutableDataClass = [NSMutableData class];