diff --git a/src/common/Logging/Logger.cpp b/src/common/Logging/Logger.cpp index 13561543..bc063b25 100644 --- a/src/common/Logging/Logger.cpp +++ b/src/common/Logging/Logger.cpp @@ -1,5 +1,7 @@ #include "Logger.h" +#define SPDLOG_LEVEL_NAMES { "trace", "debug", "info", "warning", "error", "fatal", "off" } + #include #include #include @@ -10,16 +12,6 @@ namespace fs = std::experimental::filesystem; -Sapphire::Logger::Logger() -{ - -} - -Sapphire::Logger::~Logger() -{ - -} - void Sapphire::Logger::init( const std::string& logPath ) { auto pos = logPath.find_last_of( fs::path::preferred_separator ); diff --git a/src/common/Logging/Logger.h b/src/common/Logging/Logger.h index af0c9d0d..ced4cf9e 100644 --- a/src/common/Logging/Logger.h +++ b/src/common/Logging/Logger.h @@ -13,8 +13,8 @@ namespace Sapphire private: std::string m_logFile; - Logger(); - ~Logger(); + Logger() = default; + ~Logger() = default; public: diff --git a/src/common/Util/CrashHandler.cpp b/src/common/Util/CrashHandler.cpp index 614496d7..462c19ae 100644 --- a/src/common/Util/CrashHandler.cpp +++ b/src/common/Util/CrashHandler.cpp @@ -8,6 +8,17 @@ #include #else #include + +class SapphireStackWalker : public StackWalker +{ +public: + SapphireStackWalker() : StackWalker() {} +protected: + virtual void OnOutput( LPCSTR szText ) + { + Sapphire::Logger::fatal( "{}", szText ); + } +}; #endif using namespace Sapphire::Common; @@ -137,7 +148,7 @@ void Util::CrashHandler::printStackTrace( unsigned int max_frames ) #else - StackWalker sw; + SapphireStackWalker sw; sw.ShowCallstack(); #endif