whb: Fix exception handlers to be globally registered.

Was previously only registered for current thread.
This commit is contained in:
James Benton
2018-05-25 18:59:29 +01:00
parent 710ce964c8
commit 33bff6ccb9
2 changed files with 14 additions and 5 deletions

View File

@@ -14,6 +14,15 @@ extern "C" {
typedef BOOL (*OSExceptionCallbackFn)(OSContext *context);
typedef enum OSExceptionMode
{
OS_EXCEPTION_MODE_SYSTEM = 0,
OS_EXCEPTION_MODE_THREAD = 1,
OS_EXCEPTION_MODE_GLOBAL = 2,
OS_EXCEPTION_MODE_THREAD_ALL_CORES = 3,
OS_EXCEPTION_MODE_GLOBAL_ALL_CORES = 4,
} OSExceptionMode;
typedef enum OSExceptionType
{
OS_EXCEPTION_TYPE_SYSTEM_RESET = 0,
@@ -38,7 +47,7 @@ OSSetExceptionCallback(OSExceptionType exceptionType,
OSExceptionCallbackFn callback);
OSExceptionCallbackFn
OSSetExceptionCallbackEx(UNKNOWN_ARG,
OSSetExceptionCallbackEx(OSExceptionMode mode,
OSExceptionType exceptionType,
OSExceptionCallbackFn callback);