commit
dd7572925b
@ -22,7 +22,7 @@ AString GetOSErrorString( int a_ErrNo)
|
||||
|
||||
// According to http://linux.die.net/man/3/strerror_r there are two versions of strerror_r():
|
||||
|
||||
#if !defined(__APPLE__) && defined( _GNU_SOURCE) && !defined(ANDROID_NDK) // GNU version of strerror_r()
|
||||
#if defined(__GLIBC__) && defined( _GNU_SOURCE) && !defined(ANDROID_NDK) // GNU version of strerror_r()
|
||||
|
||||
char * res = strerror_r( errno, buffer, ARRAYCOUNT(buffer));
|
||||
if (res != nullptr)
|
||||
|
@ -8,7 +8,9 @@
|
||||
#ifdef _WIN32
|
||||
#include "../StackWalker.h"
|
||||
#else
|
||||
#ifdef __GLIBC__
|
||||
#include <execinfo.h>
|
||||
#endif
|
||||
#include <unistd.h>
|
||||
#endif
|
||||
|
||||
@ -38,12 +40,14 @@ void PrintStackTrace(void)
|
||||
} sw;
|
||||
sw.ShowCallstack();
|
||||
#else
|
||||
#ifdef __GLIBC__
|
||||
// Use the backtrace() function to get and output the stackTrace:
|
||||
// Code adapted from http://stackoverflow.com/questions/77005/how-to-generate-a-stacktrace-when-my-gcc-c-app-crashes
|
||||
void * stackTrace[30];
|
||||
btsize numItems = backtrace(stackTrace, ARRAYCOUNT(stackTrace));
|
||||
backtrace_symbols_fd(stackTrace, numItems, STDERR_FILENO);
|
||||
#endif
|
||||
#endif
|
||||
}
|
||||
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user