From 7b68a6bf69ca8eee943d2218610cd3665f7afa72 Mon Sep 17 00:00:00 2001 From: Spp Date: Mon, 26 Sep 2011 14:34:50 +0200 Subject: Core/Logging: Add new function to include full stacktrace. Note: It only has use for devs but makes it easier to get the error with a full trace --- src/server/shared/Logging/Log.cpp | 12 ++++++++++++ src/server/shared/Logging/Log.h | 1 + 2 files changed, 13 insertions(+) (limited to 'src') diff --git a/src/server/shared/Logging/Log.cpp b/src/server/shared/Logging/Log.cpp index d7222c8564f..55bfe76cb12 100755 --- a/src/server/shared/Logging/Log.cpp +++ b/src/server/shared/Logging/Log.cpp @@ -1039,3 +1039,15 @@ void Log::outChat(const char * str, ...) va_end(ap); } } + +void Log::outErrorST(const char * str, ...) +{ + va_list ap; + va_start(ap, str); + char nnew_str[MAX_QUERY_LEN]; + vsnprintf(nnew_str, MAX_QUERY_LEN, str, ap); + va_end(ap); + + ACE_Stack_Trace st; + outError("%s [Stacktrace: %s]", nnew_str, st.c_str()); +} diff --git a/src/server/shared/Logging/Log.h b/src/server/shared/Logging/Log.h index aba1708232f..5c23616ac5c 100755 --- a/src/server/shared/Logging/Log.h +++ b/src/server/shared/Logging/Log.h @@ -114,6 +114,7 @@ class Log void SetColor(bool stdout_stream, ColorTypes color); void ResetColor(bool stdout_stream); + void outErrorST( const char * err, ... ) ATTR_PRINTF(2, 3); void outDB( LogTypes type, const char * str ); void outString( const char * str, ... ) ATTR_PRINTF(2, 3); void outString( ); -- cgit v1.2.3