From 7cb385a56f9fab59f67ccec93a34d9fae98cdedd Mon Sep 17 00:00:00 2001 From: Glenn Maynard Date: Wed, 16 Jun 2004 03:39:43 +0000 Subject: [PATCH] improve output --- stepmania/src/archutils/Unix/CrashHandler.cpp | 1 + stepmania/src/archutils/Unix/CrashHandlerChild.cpp | 5 ++++- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/stepmania/src/archutils/Unix/CrashHandler.cpp b/stepmania/src/archutils/Unix/CrashHandler.cpp index f59551dd97..92bb28ed71 100644 --- a/stepmania/src/archutils/Unix/CrashHandler.cpp +++ b/stepmania/src/archutils/Unix/CrashHandler.cpp @@ -339,6 +339,7 @@ static void RunCrashHandler( const CrashData *crash ) /* Stop other threads. XXX: This prints a spurious ptrace error if any threads * are already suspended, which happens in ForceCrashHandlerDeadlock(). */ RageThread::HaltAllThreads(); +fprintf(stderr, "crash\n"); /* We need to be very careful, since we're under crash conditions. Let's fork * a process and exec ourself to get a clean environment to work in. */ diff --git a/stepmania/src/archutils/Unix/CrashHandlerChild.cpp b/stepmania/src/archutils/Unix/CrashHandlerChild.cpp index cbedb02c1c..2c434c93d8 100644 --- a/stepmania/src/archutils/Unix/CrashHandlerChild.cpp +++ b/stepmania/src/archutils/Unix/CrashHandlerChild.cpp @@ -300,7 +300,10 @@ static void child_process() case SIGFPE: case SIGSEGV: case SIGBUS: - reason += ssprintf( " at 0x%08x", (unsigned int) crash.si.si_addr ); + if( crash.si.si_code == SI_USER ) + reason += ssprintf( " from pid %i", (int) crash.si.si_addr ); + else + reason += ssprintf( " at 0x%08x", (unsigned int) crash.si.si_addr ); } break; }