diff --git a/contrib/libs/apache/arrow/cpp/src/arrow/util/logging.cc b/contrib/libs/apache/arrow/cpp/src/arrow/util/logging.cc --- a/contrib/libs/apache/arrow/cpp/src/arrow/util/logging.cc +++ b/contrib/libs/apache/arrow/cpp/src/arrow/util/logging.cc @@ -18,7 +18,8 @@ #include "arrow/util/logging.h" #ifdef ARROW_WITH_BACKTRACE -#include +#include +#include #endif #include #include @@ -93,9 +94,8 @@ class CerrLog { void PrintBackTrace() { #ifdef ARROW_WITH_BACKTRACE - void* buffer[255]; - const int calls = backtrace(buffer, static_cast(sizeof(buffer) / sizeof(void*))); - backtrace_symbols_fd(buffer, calls, 1); + FormatBackTrace(&Cout); + Cout.Flush(); #endif } };