diff --git a/CMakeLists.txt b/CMakeLists.txt index 8d34596..61afc1a 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -82,13 +82,13 @@ endif() if(NOT WIN32) check_support(HAS_UNWIND has_unwind.cpp "" "" "") check_support(HAS_EXECINFO has_execinfo.cpp "" "" "") - check_support(HAS_BACKTRACE has_backtrace.cpp "" "backtrace" "${CPPTRACE_BACKTRACE_PATH_DEFINITION}") - set(STACKTRACE_LINK_LIB "stdc++_libbacktrace") else() check_support(HAS_STACKWALK has_stackwalk.cpp "" "dbghelp" "") endif() if(NOT WIN32 OR MINGW) + check_support(HAS_BACKTRACE has_backtrace.cpp "" "backtrace" "${CPPTRACE_BACKTRACE_PATH_DEFINITION}") + set(STACKTRACE_LINK_LIB "stdc++_libbacktrace") check_support(HAS_CXX_EXCEPTION_TYPE has_cxx_exception_type.cpp "" "" "") endif() diff --git a/src/symbols/symbols_with_libbacktrace.cpp b/src/symbols/symbols_with_libbacktrace.cpp index 360ff94..b6eb327 100644 --- a/src/symbols/symbols_with_libbacktrace.cpp +++ b/src/symbols/symbols_with_libbacktrace.cpp @@ -54,7 +54,7 @@ namespace libbacktrace { static backtrace_state* state = nullptr; static bool called = false; if(!called) { - state = backtrace_create_state(program_name(), true, error_callback, nullptr); + state = backtrace_create_state(program_name().c_str(), true, error_callback, nullptr); called = true; } return state;