diff -r 841ab1482c9c -r 06512deddac4 servlib/bundling/BundleDaemon.cc --- a/servlib/bundling/BundleDaemon.cc Wed Jun 22 13:58:21 2011 +0100 +++ b/servlib/bundling/BundleDaemon.cc Wed Jun 22 15:06:06 2011 +0100 @@ -2867,7 +2867,9 @@ size = backtrace(array, 10); // print out all the frames to stderr + //log_err(stderr, "Error: signal %d:\n", sig); fprintf(stderr, "Error: signal %d:\n", sig); + backtrace_symbols_fd(array, size, 2); exit(1); } @@ -2877,6 +2879,8 @@ BundleDaemon::run() { static const char* LOOP_LOG = "/dtn/bundle/daemon/loop"; + + signal(SIGSEGV, handle_sigsegv); if (! BundleTimestamp::check_local_clock()) { exit(1);