From 9077892d873868f2e4a7c8493d903ade82911f59 Mon Sep 17 00:00:00 2001 From: Peter Conrad Date: Tue, 17 Sep 2019 16:11:09 +0200 Subject: [PATCH] Log stacktrace instead of writing to stderr --- src/thread/thread_d.hpp | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/src/thread/thread_d.hpp b/src/thread/thread_d.hpp index 88c8d45..2f06d00 100644 --- a/src/thread/thread_d.hpp +++ b/src/thread/thread_d.hpp @@ -7,7 +7,7 @@ #include #include -#include +#include #include namespace fc { @@ -394,8 +394,10 @@ namespace fc { * is probably just as likely to cause crashes */ if( std::current_exception() != std::exception_ptr() ) { - elog( "Thread ${name} yielded in exception handler!", ("name",thread::current().name()) ); - print_stacktrace( std::cerr ); + std::stringstream stacktrace; + print_stacktrace( stacktrace ); + elog( "Thread ${name} yielded in exception handler!\n${trace}", + ("name",thread::current().name())("trace",stacktrace.str()) ); assert( std::current_exception() != std::exception_ptr() ); }