XQuartz: Use the default signal handler

This allows better interaction with CrashTracer

Signed-off-by: Jeremy Huddleston <jeremyhu@apple.com>
This commit is contained in:
Jeremy Huddleston 2011-01-23 22:35:34 -08:00
parent 418bb57a39
commit effaf9459c

View File

@ -63,6 +63,7 @@
#include <fcntl.h> #include <fcntl.h>
#include <IOKit/pwr_mgt/IOPMLib.h> #include <IOKit/pwr_mgt/IOPMLib.h>
#include <pthread.h> #include <pthread.h>
#include <signal.h>
#include <rootlessCommon.h> #include <rootlessCommon.h>
#include <Xplugin.h> #include <Xplugin.h>
@ -143,6 +144,26 @@ void QuartzInitOutput(
int argc, int argc,
char **argv ) char **argv )
{ {
/* For XQuartz, we want to just use the default signal handler to work better with CrashTracer */
signal(SIGSEGV, SIG_DFL);
signal(SIGILL, SIG_DFL);
#ifdef SIGEMT
signal(SIGEMT, SIG_DFL);
#endif
signal(SIGFPE, SIG_DFL);
#ifdef SIGBUS
signal(SIGBUS, SIG_DFL);
#endif
#ifdef SIGSYS
signal(SIGSYS, SIG_DFL);
#endif
#ifdef SIGXCPU
signal(SIGXCPU, SIG_DFL);
#endif
#ifdef SIGXFSZ
signal(SIGXFSZ, SIG_DFL);
#endif
if (!RegisterBlockAndWakeupHandlers(QuartzBlockHandler, if (!RegisterBlockAndWakeupHandlers(QuartzBlockHandler,
QuartzWakeupHandler, QuartzWakeupHandler,
NULL)) NULL))