X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=libs%2Fpbd%2Fpbd%2Fstacktrace.h;h=99fc9d5c574f742e400532f8fb8144928fee9b2c;hb=00b8cff66fb971ead1a54e4b11e6dd869256461b;hp=fbb92c8fa0c34544ae4a77325ad09ec0f47cddd1;hpb=36c233fe6ce570ce85224626ce7aba4a2607537f;p=ardour.git diff --git a/libs/pbd/pbd/stacktrace.h b/libs/pbd/pbd/stacktrace.h index fbb92c8fa0..99fc9d5c57 100644 --- a/libs/pbd/pbd/stacktrace.h +++ b/libs/pbd/pbd/stacktrace.h @@ -1,5 +1,5 @@ /* - Copyright (C) 2000-2007 Paul Davis + Copyright (C) 2000-2007 Paul Davis This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -41,10 +41,9 @@ namespace PBD { LIBPBD_API void stacktrace (std::ostream& out, int levels = 0); LIBPBD_API void trace_twb(); - LIBPBD_API std::string demangle (const std::string&); template -class LIBPBD_API thing_with_backtrace +class /*LIBPBD_API*/ thing_with_backtrace { public: thing_with_backtrace () { @@ -52,7 +51,7 @@ class LIBPBD_API thing_with_backtrace #ifdef HAVE_EXECINFO allocation_backtrace = new void*[50]; allocation_backtrace_size = backtrace (allocation_backtrace, 50); -#else +#else allocation_backtrace_size = 0; #endif Glib::Threads::Mutex::Lock lm (all_mutex); @@ -64,14 +63,14 @@ class LIBPBD_API thing_with_backtrace #ifdef HAVE_EXECINFO allocation_backtrace = new void*[50]; allocation_backtrace_size = backtrace (allocation_backtrace, 50); -#else +#else allocation_backtrace_size = 0; #endif Glib::Threads::Mutex::Lock lm (all_mutex); all.push_back (this); } - ~thing_with_backtrace() { + ~thing_with_backtrace() { if (allocation_backtrace_size) { delete [] allocation_backtrace; } @@ -90,9 +89,9 @@ class LIBPBD_API thing_with_backtrace for (x = all.begin(); x != all.end(); ++x) { char **strings; size_t i; - + strings = backtrace_symbols ((*x)->allocation_backtrace, (*x)->allocation_backtrace_size); - + if (strings) { stream << "--- ALLOCATED SHARED_PTR @ " << (*x) << std::endl; for (i = 0; i < (*x)->allocation_backtrace_size && i < 50U; i++) { @@ -113,11 +112,9 @@ private: static Glib::Threads::Mutex all_mutex; }; -template LIBPBD_API std::list *> PBD::thing_with_backtrace::all; -template LIBPBD_API Glib::Threads::Mutex PBD::thing_with_backtrace::all_mutex; +template /*LIBPBD_API*/ std::list *> PBD::thing_with_backtrace::all; +template /*LIBPBD_API*/ Glib::Threads::Mutex PBD::thing_with_backtrace::all_mutex; } // namespace PBD - - #endif /* __libpbd_stacktrace_h__ */