Catch more exceptions on Windows.

This commit is contained in:
Asher Baker 2013-05-19 03:28:09 +01:00
parent 7fdbd505a2
commit 4750eb0b7e

View File

@ -93,9 +93,16 @@ void OnGameFrame(bool simulating)
#elif defined _WINDOWS
LONG CALLBACK BreakpadVectoredHandler(_In_ PEXCEPTION_POINTERS ExceptionInfo)
{
if (ExceptionInfo->ExceptionRecord->ExceptionCode != EXCEPTION_ACCESS_VIOLATION)
switch (ExceptionInfo->ExceptionRecord->ExceptionCode)
{
return EXCEPTION_CONTINUE_SEARCH;
case EXCEPTION_ACCESS_VIOLATION:
case EXCEPTION_ARRAY_BOUNDS_EXCEEDED:
case EXCEPTION_DATATYPE_MISALIGNMENT:
case EXCEPTION_ILLEGAL_INSTRUCTION:
case EXCEPTION_STACK_OVERFLOW:
break;
default:
return EXCEPTION_CONTINUE_SEARCH;
}
if (handler->WriteMinidumpForException(ExceptionInfo))