[KERNEL32] Directly use UnhandledExceptionFilter in BaseProcessStartup 953/head
authorMark Jansen <mark.jansen@reactos.org>
Sat, 20 Oct 2018 13:38:21 +0000 (15:38 +0200)
committerMark Jansen <mark.jansen@reactos.org>
Sun, 28 Oct 2018 12:01:38 +0000 (13:01 +0100)
dll/win32/kernel32/client/proc.c

index dbd5c10..f362194 100644 (file)
@@ -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)