X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2Fdebug%2Fbacktrace.cpp;h=643fdf2bb03288dd16cdd3605e473d675541a479;hb=e7638f74d3e4869020a19dfa1cc700d52373f01c;hp=c0bfd9d9ca16158e898b7ecd2625eb9375d3bc6d;hpb=d61b4678e4e4a2a3661a2472dc7349cc9fd5eaad;p=libs%2Fcore.git diff --git a/source/debug/backtrace.cpp b/source/debug/backtrace.cpp index c0bfd9d..643fdf2 100644 --- a/source/debug/backtrace.cpp +++ b/source/debug/backtrace.cpp @@ -5,9 +5,11 @@ Copyright © 2007 Mikko Rasa, Mikkosoft Productions Distributed under the LGPL */ #ifndef WIN32 +#include #include #endif #include "backtrace.h" +#include "demangle.h" using namespace std; @@ -20,13 +22,26 @@ Backtrace Backtrace::create() void *addresses[50]; int count=::backtrace(addresses, 50); - char **symbols=backtrace_symbols(addresses, count); + //char **symbols=backtrace_symbols(addresses, count); Backtrace bt; + Dl_info dli; for(int i=0; iaddress<<" in "<symbol<<'\n'; + out<address<<" in "<symbol<<" from "<file<<'\n'; return out; }