X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2Fdebug%2Fbacktrace.cpp;h=f43a9edacccb2655eaaf42e094e4d5f74dd8742f;hb=b56eb5ec1da675da0c66abc53c1e4f6c4e4cccbd;hp=5e96005538eed6830bcb87b6e0e967467aa4af2b;hpb=9f2774a500d779af9a38f42bfb03b507444a47b0;p=libs%2Fcore.git diff --git a/source/debug/backtrace.cpp b/source/debug/backtrace.cpp index 5e96005..f43a9ed 100644 --- a/source/debug/backtrace.cpp +++ b/source/debug/backtrace.cpp @@ -23,22 +23,22 @@ Backtrace Backtrace::create() { #if !defined(WIN32) && defined(__GLIBC__) void *addresses[50]; - int count=::backtrace(addresses, 50); + int count = ::backtrace(addresses, 50); Backtrace bt; Dl_info dli; for(int i=0; iaddress<<" in "<symbol<<" from "<file<<'\n'; + const list &frames = bt.get_frames(); + for(list::const_iterator i=frames.begin(); i!=frames.end(); ++i) + out<<*i<<'\n'; + + return out; +} + +ostream &operator<<(ostream &out, const Backtrace::StackFrame &sf) +{ + out<