From: Mark Jansen Date: Sat, 20 Oct 2018 13:38:21 +0000 (+0200) Subject: [KERNEL32] Directly use UnhandledExceptionFilter in BaseProcessStartup X-Git-Tag: 0.4.12-dev~363 X-Git-Url: https://git.reactos.org/?p=reactos.git;a=commitdiff_plain;h=824e5dba51aca08204045e440be9c253a8469ac2 [KERNEL32] Directly use UnhandledExceptionFilter in BaseProcessStartup --- diff --git a/dll/win32/kernel32/client/proc.c b/dll/win32/kernel32/client/proc.c index dbd5c10d0ff..f36219457b2 100644 --- a/dll/win32/kernel32/client/proc.c +++ b/dll/win32/kernel32/client/proc.c @@ -445,33 +445,6 @@ BasepSxsCloseHandles(IN PBASE_MSG_SXS_HANDLES Handles) } } -static -LONG BaseExceptionFilter(EXCEPTION_POINTERS *ExceptionInfo) -{ - LONG ExceptionDisposition = EXCEPTION_EXECUTE_HANDLER; - LPTOP_LEVEL_EXCEPTION_FILTER RealFilter; - RealFilter = RtlDecodePointer(GlobalTopLevelExceptionFilter); - - if (RealFilter != NULL) - { - _SEH2_TRY - { - ExceptionDisposition = RealFilter(ExceptionInfo); - } - _SEH2_EXCEPT(EXCEPTION_EXECUTE_HANDLER) - { - } - _SEH2_END; - } - if ((ExceptionDisposition == EXCEPTION_CONTINUE_SEARCH || ExceptionDisposition == EXCEPTION_EXECUTE_HANDLER) && - RealFilter != UnhandledExceptionFilter) - { - ExceptionDisposition = UnhandledExceptionFilter(ExceptionInfo); - } - - return ExceptionDisposition; -} - VOID WINAPI BaseProcessStartup(PPROCESS_START_ROUTINE lpStartAddress) @@ -489,7 +462,7 @@ BaseProcessStartup(PPROCESS_START_ROUTINE lpStartAddress) /* Call the Start Routine */ ExitThread(lpStartAddress()); } - _SEH2_EXCEPT(BaseExceptionFilter(_SEH2_GetExceptionInformation())) + _SEH2_EXCEPT(UnhandledExceptionFilter(_SEH2_GetExceptionInformation())) { /* Get the Exit code from the SEH Handler */ if (!BaseRunningInServerProcess)