Mercurial > pidgin
comparison libpurple/util.c @ 15645:61b42cf81aa4
Restore default signal handlers in fork()'d children. This adds a gaim_restore_default_signal_handlers() utility function since children are made in multiple places.
author | Evan Schoenberg <evan.s@dreskin.net> |
---|---|
date | Sun, 18 Feb 2007 18:16:57 +0000 |
parents | b0471b2a1de9 |
children | 122be0df0567 80944a182710 |
comparison
equal
deleted
inserted
replaced
15644:602eb093e4c0 | 15645:61b42cf81aa4 |
---|---|
4113 protocol = "prpl-aim"; | 4113 protocol = "prpl-aim"; |
4114 } | 4114 } |
4115 return protocol; | 4115 return protocol; |
4116 } | 4116 } |
4117 | 4117 |
4118 void gaim_restore_default_signal_handlers(void) | |
4119 { | |
4120 #ifdef HAVE_SIGNAL_H | |
4121 signal(SIGHUP, SIG_DFL); /* 1: terminal line hangup */ | |
4122 signal(SIGINT, SIG_DFL); /* 2: interrupt program */ | |
4123 signal(SIGQUIT, SIG_DFL); /* 3: quit program */ | |
4124 signal(SIGILL, SIG_DFL); /* 4: illegal instruction (not reset when caught) */ | |
4125 signal(SIGTRAP, SIG_DFL); /* 5: trace trap (not reset when caught) */ | |
4126 signal(SIGABRT, SIG_DFL); /* 6: abort program */ | |
4127 signal(SIGEMT, SIG_DFL); /* 7: EMT instruction */ | |
4128 signal(SIGFPE, SIG_DFL); /* 8: floating point exception */ | |
4129 signal(SIGBUS, SIG_DFL); /* 10: bus error */ | |
4130 signal(SIGSEGV, SIG_DFL); /* 11: segmentation violation */ | |
4131 signal(SIGSYS, SIG_DFL); /* 12: bad argument to system call */ | |
4132 signal(SIGPIPE, SIG_DFL); /* 13: write on a pipe with no reader */ | |
4133 signal(SIGALRM, SIG_DFL); /* 14: real-time timer expired */ | |
4134 signal(SIGTERM, SIG_DFL); /* 15: software termination signal */ | |
4135 signal(SIGCHLD, SIG_DFL); /* 20: child status has changed */ | |
4136 signal(SIGXCPU, SIG_DFL); /* 24: exceeded CPU time limit */ | |
4137 signal(SIGXFSZ, SIG_DFL); /* 25: exceeded file size limit */ | |
4138 #endif | |
4139 } |