#ifdef __linux__ for the crash handler. it compiles on other platforms,
but the functionality is bound to linux' /proc structure.
This commit is contained in:
parent
625f592fb7
commit
42ca262e39
|
@ -83,6 +83,7 @@ PACKAGE " " VERSION " - mailbox synchronizer\n"
|
|||
exit( code );
|
||||
}
|
||||
|
||||
#ifdef __linux__
|
||||
static void
|
||||
crashHandler( int n )
|
||||
{
|
||||
|
@ -94,7 +95,7 @@ crashHandler( int n )
|
|||
dup2( 0, 1 );
|
||||
dup2( 0, 2 );
|
||||
error( "*** " EXE " caught signal %d. Starting debugger ...\n", n );
|
||||
switch ((dpid = fork ())) {
|
||||
switch ((dpid = fork())) {
|
||||
case -1:
|
||||
perror( "fork()" );
|
||||
break;
|
||||
|
@ -110,6 +111,7 @@ crashHandler( int n )
|
|||
}
|
||||
exit( 3 );
|
||||
}
|
||||
#endif
|
||||
|
||||
static int
|
||||
matches( const char *t, const char *p )
|
||||
|
@ -438,11 +440,13 @@ main( int argc, char **argv )
|
|||
}
|
||||
}
|
||||
|
||||
#ifdef __linux__
|
||||
if (DFlags & DEBUG) {
|
||||
signal( SIGSEGV, crashHandler );
|
||||
signal( SIGBUS, crashHandler );
|
||||
signal( SIGILL, crashHandler );
|
||||
}
|
||||
#endif
|
||||
|
||||
if (merge_ops( cops, mvars->ops ))
|
||||
return 1;
|
||||
|
|
Loading…
Reference in New Issue
Block a user