summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPieter Noordhuis <pcnoordhuis@gmail.com>2012-02-21 10:05:46 -0800
committerPieter Noordhuis <pcnoordhuis@gmail.com>2012-02-21 10:05:46 -0800
commita0dc1e696906635597806cdf33327d3f76dbab20 (patch)
tree2048e09e121acd299bcc55a7e6a83734856cbdc1
parent246c4c2322406de1bf5d6b10a8cae7478ec5590a (diff)
downloadredis-a0dc1e696906635597806cdf33327d3f76dbab20.tar.gz
Also force SIGSEGV without HAVE_BACKTRACE
-rw-r--r--src/debug.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/src/debug.c b/src/debug.c
index 123edb735..6f3a07f8a 100644
--- a/src/debug.c
+++ b/src/debug.c
@@ -359,7 +359,9 @@ void redisLogObjectDebugInfo(robj *o) {
}
void _redisAssert(char *estr, char *file, int line) {
+#ifdef HAVE_BACKTRACE
bugReportStart();
+#endif
redisLog(REDIS_WARNING,"=== ASSERTION FAILED ===");
redisLog(REDIS_WARNING,"==> %s:%d '%s' is not true",file,line,estr);
#ifdef HAVE_BACKTRACE
@@ -367,16 +369,18 @@ void _redisAssert(char *estr, char *file, int line) {
server.assert_file = file;
server.assert_line = line;
redisLog(REDIS_WARNING,"(forcing SIGSEGV to print the bug report.)");
- *((char*)-1) = 'x';
#endif
+ *((char*)-1) = 'x';
}
void _redisPanic(char *msg, char *file, int line) {
+#ifdef HAVE_BACKTRACE
bugReportStart();
+#endif
redisLog(REDIS_WARNING,"!!! Software Failure. Press left mouse button to continue");
redisLog(REDIS_WARNING,"Guru Meditation: %s #%s:%d",msg,file,line);
#ifdef HAVE_BACKTRACE
redisLog(REDIS_WARNING,"(forcing SIGSEGV in order to print the stack trace)");
- *((char*)-1) = 'x';
#endif
+ *((char*)-1) = 'x';
}