From f38983f3d3c196ebaf1a6703c18fe6eb8ceea6d3 Mon Sep 17 00:00:00 2001 From: Glenn Maynard Date: Fri, 16 Apr 2004 07:03:14 +0000 Subject: [PATCH] implement GetSignalBacktraceContext on DARWIN --- stepmania/src/archutils/Unix/Backtrace.cpp | 6 ++++++ stepmania/src/archutils/Unix/Backtrace.h | 2 -- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/stepmania/src/archutils/Unix/Backtrace.cpp b/stepmania/src/archutils/Unix/Backtrace.cpp index 5359465f35..40d6987af1 100644 --- a/stepmania/src/archutils/Unix/Backtrace.cpp +++ b/stepmania/src/archutils/Unix/Backtrace.cpp @@ -413,6 +413,12 @@ void GetExceptionBacktraceContext( BacktraceContext *ctx, const ExceptionInforma ctx->FramePtr = (void *) exception->registerImage->R1.lo; } +void GetSignalBacktraceContext( BacktraceContext *ctx, const ucontext_t *uc ) +{ + ctx->PC = (void *) uc->uc_mcontext->ss.srr0; + ctx->FramePtr = (void *) uc->uc_mcontext->ss.r1; +} + void InitializeBacktrace() { } void GetBacktrace( const void **buf, size_t size, const BacktraceContext *ctx ) diff --git a/stepmania/src/archutils/Unix/Backtrace.h b/stepmania/src/archutils/Unix/Backtrace.h index 8a833a12eb..1be6e6a163 100644 --- a/stepmania/src/archutils/Unix/Backtrace.h +++ b/stepmania/src/archutils/Unix/Backtrace.h @@ -33,10 +33,8 @@ bool GetThreadBacktraceContext( int ThreadID, BacktraceContext *ctx ); /* Set up a BacktraceContext to get a backtrace after receiving a signal, given * a ucontext_t (see sigaction(2)). (This interface is UNIX-specific.) */ -#if !defined(DARWIN) #include void GetSignalBacktraceContext( BacktraceContext *ctx, const ucontext_t *uc ); -#endif #if defined(DARWIN) #include