summaryrefslogtreecommitdiffstats
path: root/src/OSSupport/StackTrace.cpp
diff options
context:
space:
mode:
authorworktycho <work.tycho@gmail.com>2015-11-19 23:42:16 +0100
committerworktycho <work.tycho@gmail.com>2015-11-19 23:42:16 +0100
commitdd7572925bac36279c2af17033322683aecf52d6 (patch)
tree845775e9acf8694151efcad67a02130dbc05761f /src/OSSupport/StackTrace.cpp
parentMerge pull request #2451 from cuberite/mobchartoint (diff)
parentInclude execinfo.h only on __GLIBC__ (diff)
downloadcuberite-dd7572925bac36279c2af17033322683aecf52d6.tar
cuberite-dd7572925bac36279c2af17033322683aecf52d6.tar.gz
cuberite-dd7572925bac36279c2af17033322683aecf52d6.tar.bz2
cuberite-dd7572925bac36279c2af17033322683aecf52d6.tar.lz
cuberite-dd7572925bac36279c2af17033322683aecf52d6.tar.xz
cuberite-dd7572925bac36279c2af17033322683aecf52d6.tar.zst
cuberite-dd7572925bac36279c2af17033322683aecf52d6.zip
Diffstat (limited to 'src/OSSupport/StackTrace.cpp')
-rw-r--r--src/OSSupport/StackTrace.cpp16
1 files changed, 10 insertions, 6 deletions
diff --git a/src/OSSupport/StackTrace.cpp b/src/OSSupport/StackTrace.cpp
index 1ec10f20e..d0e088f4e 100644
--- a/src/OSSupport/StackTrace.cpp
+++ b/src/OSSupport/StackTrace.cpp
@@ -8,7 +8,9 @@
#ifdef _WIN32
#include "../StackWalker.h"
#else
- #include <execinfo.h>
+ #ifdef __GLIBC__
+ #include <execinfo.h>
+ #endif
#include <unistd.h>
#endif
@@ -38,11 +40,13 @@ void PrintStackTrace(void)
} sw;
sw.ShowCallstack();
#else
- // 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);
+ #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
}