summaryrefslogtreecommitdiffstats
path: root/tdeio/tdeio/slavebase.cpp
diff options
context:
space:
mode:
authorAlexander Golubev <fatzer2@gmail.com>2013-08-17 13:21:22 +0200
committerSlávek Banko <slavek.banko@axis.cz>2013-08-17 13:21:47 +0200
commit35748811a4b11b5947879f657a752e89d649ce06 (patch)
treead162303282412154ab2e31797ebde8f11398f25 /tdeio/tdeio/slavebase.cpp
parent18ba4a49ac445909a21897e1da90af618a3004ad (diff)
downloadtdelibs-35748811a4b11b5947879f657a752e89d649ce06.tar.gz
tdelibs-35748811a4b11b5947879f657a752e89d649ce06.zip
Added check the conditions for building backtrace handler
Diffstat (limited to 'tdeio/tdeio/slavebase.cpp')
-rw-r--r--tdeio/tdeio/slavebase.cpp10
1 files changed, 4 insertions, 6 deletions
diff --git a/tdeio/tdeio/slavebase.cpp b/tdeio/tdeio/slavebase.cpp
index d4aa8ca26..83b2a9889 100644
--- a/tdeio/tdeio/slavebase.cpp
+++ b/tdeio/tdeio/slavebase.cpp
@@ -66,10 +66,10 @@
#endif
#endif
-#ifndef NDEBUG
-#ifdef HAVE_BACKTRACE
+#ifndef NDEBUG
void print_trace()
{
+#if defined(HAVE_BACKTRACE) && defined(HAVE_DEMANGLE_H)
void *array[10];
size_t size;
char **strings;
@@ -85,9 +85,9 @@ void print_trace()
}
free (strings);
+#endif // defined(HAVE_BACKTRACE) && defined(HAVE_DEMANGLE_H)
}
-#endif
-#endif
+#endif // NDEBUG
using namespace TDEIO;
@@ -765,10 +765,8 @@ void SlaveBase::sigsegv_handler(int sig)
snprintf(buffer, sizeof(buffer), "tdeioslave: ####### CRASH ###### protocol = %s pid = %d signal = %d\n", s_protocol, getpid(), sig);
write(2, buffer, strlen(buffer));
#ifndef NDEBUG
-#ifdef HAVE_BACKTRACE
print_trace();
#endif
-#endif
::exit(1);
#endif
}