aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorSpp <spp@jorge.gr>2011-09-26 14:34:50 +0200
committerSpp <spp@jorge.gr>2011-09-26 14:34:50 +0200
commit7b68a6bf69ca8eee943d2218610cd3665f7afa72 (patch)
tree2c5656d95f365dc543637057338222b687c729a2 /src
parent8484b004dd32b91da507866c2db5238c97fe78a2 (diff)
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
Diffstat (limited to 'src')
-rwxr-xr-xsrc/server/shared/Logging/Log.cpp12
-rwxr-xr-xsrc/server/shared/Logging/Log.h1
2 files changed, 13 insertions, 0 deletions
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( );