From af3117bd4e6fd6dd0fb96b98be137f6fbec313ae Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Benjamin=20H=C3=B6glinger-Stelzer?= Date: Sat, 6 Aug 2022 12:07:40 +0200 Subject: [PATCH] Removed crash handler code --- sdk/src/ViGEmClient.cpp | 70 ----------------------------------------- 1 file changed, 70 deletions(-) diff --git a/sdk/src/ViGEmClient.cpp b/sdk/src/ViGEmClient.cpp index e1bf4d6..1f256a5 100644 --- a/sdk/src/ViGEmClient.cpp +++ b/sdk/src/ViGEmClient.cpp @@ -29,7 +29,6 @@ SOFTWARE. #include #include #include -#include // // Driver shared @@ -53,26 +52,6 @@ SOFTWARE. // #include "Internal.h" -// -// Uncomment to compile in crash dump handler -// -//#define VIGEM_USE_CRASH_HANDLER - - -#ifdef VIGEM_USE_CRASH_HANDLER -typedef BOOL(WINAPI *MINIDUMPWRITEDUMP)( - HANDLE hProcess, - DWORD dwPid, - HANDLE hFile, - MINIDUMP_TYPE DumpType, - CONST PMINIDUMP_EXCEPTION_INFORMATION ExceptionParam, - CONST PMINIDUMP_USER_STREAM_INFORMATION UserStreamParam, - CONST PMINIDUMP_CALLBACK_INFORMATION CallbackParam - ); - -LONG WINAPI vigem_internal_exception_handler(struct _EXCEPTION_POINTERS* apExceptionInfo); -#endif - // // Initializes a virtual gamepad object. @@ -94,57 +73,8 @@ PVIGEM_TARGET FORCEINLINE VIGEM_TARGET_ALLOC_INIT( return target; } -#ifdef VIGEM_USE_CRASH_HANDLER -LONG WINAPI vigem_internal_exception_handler(struct _EXCEPTION_POINTERS* apExceptionInfo) -{ - const auto mhLib = LoadLibrary(L"dbghelp.dll"); - const auto pDump = reinterpret_cast(GetProcAddress(mhLib, "MiniDumpWriteDump")); - - const auto hFile = CreateFile( - L"ViGEmClient.dmp", - GENERIC_WRITE, - FILE_SHARE_WRITE, - nullptr, - CREATE_ALWAYS, - FILE_ATTRIBUTE_NORMAL, - nullptr - ); - - const DWORD flags = MiniDumpWithFullMemory | MiniDumpWithHandleData | MiniDumpWithUnloadedModules | - MiniDumpWithUnloadedModules | MiniDumpWithProcessThreadData | - MiniDumpWithFullMemoryInfo | MiniDumpWithThreadInfo | - MiniDumpWithFullAuxiliaryState | MiniDumpIgnoreInaccessibleMemory | - MiniDumpWithTokenInformation; - - if (hFile != INVALID_HANDLE_VALUE) - { - _MINIDUMP_EXCEPTION_INFORMATION ExInfo; - ExInfo.ThreadId = GetCurrentThreadId(); - ExInfo.ExceptionPointers = apExceptionInfo; - ExInfo.ClientPointers = FALSE; - - pDump( - GetCurrentProcess(), - GetCurrentProcessId(), - hFile, - (MINIDUMP_TYPE)flags, - &ExInfo, - nullptr, - nullptr - ); - CloseHandle(hFile); - } - - return EXCEPTION_CONTINUE_SEARCH; -} -#endif - PVIGEM_CLIENT vigem_alloc() { -#ifdef VIGEM_USE_CRASH_HANDLER - SetUnhandledExceptionFilter(vigem_internal_exception_handler); -#endif - const auto driver = static_cast(malloc(sizeof(VIGEM_CLIENT))); if (!driver)