[NDK/RTL]: Implement, define, fix, and comment RtlSetUnhandledExceptionFilter.

svn path=/trunk/; revision=54680
This commit is contained in:
Alex Ionescu 2011-12-18 01:50:11 +00:00
parent 1b0eb4aad4
commit 48b3130f83
3 changed files with 21 additions and 7 deletions

View file

@ -604,10 +604,10 @@ RtlAssert(
);
NTSYSAPI
PVOID
VOID
NTAPI
RtlSetUnhandledExceptionFilter(
IN PVOID TopLevelExceptionFilter
IN PRTLP_UNHANDLED_EXCEPTION_FILTER TopLevelExceptionFilter
);
NTSYSAPI

View file

@ -472,6 +472,15 @@ extern const PRTL_REALLOCATE_STRING_ROUTINE RtlReallocateStringRoutine;
#endif /* NTOS_MODE_USER */
//
// Unhandled Exception Filter
//
typedef ULONG
(NTAPI *RTLP_UNHANDLED_EXCEPTION_FILTER)(
IN struct _EXCEPTION_POINTERS *ExceptionInfo
);
typedef RTLP_UNHANDLED_EXCEPTION_FILTER *PRTLP_UNHANDLED_EXCEPTION_FILTER;
//
// Callback for RTL Heap Enumeration
//

View file

@ -15,6 +15,10 @@
#define NDEBUG
#include <debug.h>
/* GLOBALS *****************************************************************/
PRTLP_UNHANDLED_EXCEPTION_FILTER RtlpUnhandledExceptionFilter;
/* FUNCTIONS ***************************************************************/
#if !defined(_M_IX86) && !defined(_M_AMD64)
@ -172,17 +176,18 @@ LONG
NTAPI
RtlUnhandledExceptionFilter(IN struct _EXCEPTION_POINTERS* ExceptionInfo)
{
/* This is used by the security cookie checks, and calso called externally */
UNIMPLEMENTED;
return ERROR_CALL_NOT_IMPLEMENTED;
}
/*
* @unimplemented
* @implemented
*/
PVOID
VOID
NTAPI
RtlSetUnhandledExceptionFilter(IN PVOID TopLevelExceptionFilter)
RtlSetUnhandledExceptionFilter(IN PRTLP_UNHANDLED_EXCEPTION_FILTER TopLevelExceptionFilter)
{
UNIMPLEMENTED;
return NULL;
/* Set the filter which is used by the CriticalSection package */
RtlpUnhandledExceptionFilter = RtlEncodePointer(TopLevelExceptionFilter);
}