summaryrefslogtreecommitdiffstats
path: root/crawl-ref/source/crash-u.cc
diff options
context:
space:
mode:
authorSteven Noonan <steven@uplinklabs.net>2009-10-21 17:05:33 -0700
committerSteven Noonan <steven@uplinklabs.net>2009-10-21 17:07:32 -0700
commitba1dd86d6c0deaa7c69e2d6b9322f7924c806ccf (patch)
tree68ead12e99bc74a9a7d2ead92cf5ac2cf5985729 /crawl-ref/source/crash-u.cc
parente29feeb9d231e4d966ca8e22a47992f5f6e74504 (diff)
downloadcrawl-ref-ba1dd86d6c0deaa7c69e2d6b9322f7924c806ccf.tar.gz
crawl-ref-ba1dd86d6c0deaa7c69e2d6b9322f7924c806ccf.zip
crash-u.cc: add a simple way to blacklist systems because backtrace() is unavailable
Signed-off-by: Steven Noonan <steven@uplinklabs.net>
Diffstat (limited to 'crawl-ref/source/crash-u.cc')
-rw-r--r--crawl-ref/source/crash-u.cc13
1 files changed, 12 insertions, 1 deletions
diff --git a/crawl-ref/source/crash-u.cc b/crawl-ref/source/crash-u.cc
index be7d63baea..60c60c5e95 100644
--- a/crawl-ref/source/crash-u.cc
+++ b/crawl-ref/source/crash-u.cc
@@ -11,6 +11,17 @@
#endif
#if defined(UNIX)
+ #define BACKTRACE_SUPPORTED
+#endif
+
+#ifdef BACKTRACE_SUPPORTED
+#if defined(TARGET_CPU_MIPS) || \
+ defined(TARGET_COMPILER_CYGWIN)
+ #undef BACKTRACE_SUPPORTED
+#endif
+#endif
+
+#ifdef BACKTRACE_SUPPORTED
#include <cxxabi.h>
@@ -160,7 +171,7 @@ void dump_crash_info(FILE* file)
#endif
}
-#if defined(UNIX) && !defined(TARGET_COMPILER_CYGWIN)
+#if defined(BACKTRACE_SUPPORTED)
void write_stack_trace(FILE* file, int ignore_count)
{
void* frames[50];