diff options
author | Jack <66967891+ASpoonPlaysGames@users.noreply.github.com> | 2023-12-27 00:32:01 +0000 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-12-27 01:32:01 +0100 |
commit | f5ab6fb5e8be7b73e6003d4145081d5e0c0ce287 (patch) | |
tree | 90f2c6a4885dbd181799e2325cf33588697674e1 /NorthstarDLL/logging/crashhandler.h | |
parent | bb8ed59f6891b1196c5f5bbe7346cd171c8215fa (diff) | |
download | NorthstarLauncher-f5ab6fb5e8be7b73e6003d4145081d5e0c0ce287.tar.gz NorthstarLauncher-f5ab6fb5e8be7b73e6003d4145081d5e0c0ce287.zip |
Folder restructuring from primedev (#624)v1.21.2-rc3v1.21.2
Copies of over the primedev folder structure for easier cherry-picking of further changes
Co-authored-by: F1F7Y <filip.bartos07@proton.me>
Diffstat (limited to 'NorthstarDLL/logging/crashhandler.h')
-rw-r--r-- | NorthstarDLL/logging/crashhandler.h | 97 |
1 files changed, 0 insertions, 97 deletions
diff --git a/NorthstarDLL/logging/crashhandler.h b/NorthstarDLL/logging/crashhandler.h deleted file mode 100644 index c059a8ca..00000000 --- a/NorthstarDLL/logging/crashhandler.h +++ /dev/null @@ -1,97 +0,0 @@ -#pragma once - -#include <mutex> - -//----------------------------------------------------------------------------- -// Purpose: Exception handling -//----------------------------------------------------------------------------- -class CCrashHandler -{ -public: - CCrashHandler(); - ~CCrashHandler(); - - void Init(); - void Shutdown(); - - void Lock() - { - m_Mutex.lock(); - } - - void Unlock() - { - m_Mutex.unlock(); - } - - void SetState(bool bState) - { - m_bState = bState; - } - - bool GetState() const - { - return m_bState; - } - - void SetAllFatal(bool bState) - { - m_bAllExceptionsFatal = bState; - } - - bool GetAllFatal() const - { - return m_bAllExceptionsFatal; - } - - //----------------------------------------------------------------------------- - // Exception helpers - //----------------------------------------------------------------------------- - void SetExceptionInfos(EXCEPTION_POINTERS* pExceptionPointers); - - void SetCrashedModule(); - - const CHAR* GetExceptionString() const; - const CHAR* GetExceptionString(DWORD dwExceptionCode) const; - - bool IsExceptionFatal() const; - bool IsExceptionFatal(DWORD dwExceptionCode) const; - - //----------------------------------------------------------------------------- - // Formatting - //----------------------------------------------------------------------------- - void ShowPopUpMessage(); - - void FormatException(); - void FormatCallstack(); - void FormatFlags(const CHAR* pszRegister, DWORD nValue); - void FormatIntReg(const CHAR* pszRegister, DWORD64 nValue); - void FormatFloatReg(const CHAR* pszRegister, M128A nValue); - void FormatRegisters(); - void FormatLoadedMods(); - void FormatLoadedPlugins(); - void FormatModules(); - - //----------------------------------------------------------------------------- - // Minidump - //----------------------------------------------------------------------------- - void WriteMinidump(); - -private: - PVOID m_hExceptionFilter; - EXCEPTION_POINTERS* m_pExceptionInfos; - - bool m_bHasSetConsolehandler; - bool m_bAllExceptionsFatal; - bool m_bHasShownCrashMsg; - bool m_bState; - - std::string m_svCrashedModule; - std::string m_svCrashedOffset; - - std::string m_svError; - - std::mutex m_Mutex; -}; - -extern CCrashHandler* g_pCrashHandler; |