Forgot to implement _SEH2_LEAVE. Also added some _SEH2 aliases to clean any possible ambiguity

svn path=/trunk/; revision=14340
This commit is contained in:
KJK::Hyperion 2005-03-27 00:53:15 +00:00
parent 4d4ec75256
commit 0a9a6b6359

View file

@ -215,6 +215,13 @@ static __declspec(noreturn) __inline void __stdcall _SEHCompilerSpecificHandler
#define _SEH_LEAVE break
#define _SEH_GetExceptionCode() (unsigned long)(_SEHPortableFrame->SPF_Code)
#define _SEH_GetExceptionPointers() \
((struct _EXCEPTION_POINTERS *)_SEHExceptionPointers)
#define _SEH_AbnormalTermination() (_SEHPortableFrame->SPF_Code != 0)
/* New syntax */
#define _SEH2_STATE_INIT_EXCEPT (1)
#define _SEH2_STATE_INIT_FINALLY (_SEH2_STATE_INIT_EXCEPT + 1)
@ -222,6 +229,8 @@ static __declspec(noreturn) __inline void __stdcall _SEHCompilerSpecificHandler
#define _SEH2_STATE_HANDLER (_SEH2_STATE_BODY + 1)
#define _SEH2_STATE_DONE (_SEH2_STATE_HANDLER + 1)
#define _SEH2_LEAVE { _SEH2State = _SEH2_STATE_DONE; break; }
#define _SEH2_TRY \
{ \
int _SEH2State; \
@ -300,12 +309,9 @@ static __declspec(noreturn) __inline void __stdcall _SEHCompilerSpecificHandler
#define _SEH2_HANDLE _SEH2_EXCEPT(_SEH_STATIC_FILTER(_SEH_EXECUTE_HANDLER))
#define _SEH_GetExceptionCode() (unsigned long)(_SEHPortableFrame->SPF_Code)
#define _SEH_GetExceptionPointers() \
((struct _EXCEPTION_POINTERS *)_SEHExceptionPointers)
#define _SEH_AbnormalTermination() (_SEHPortableFrame->SPF_Code != 0)
#define _SEH2_GetExceptionCode _SEH_GetExceptionCode
#define _SEH2_GetExceptionPointers _SEH_GetExceptionPointers
#define _SEH2_AbnormalTermination _SEH_AbnormalTermination
#endif