Bugfix: Exception handlers are *not* WINAPI.
diff --git a/dlls/ntdll/exception.c b/dlls/ntdll/exception.c index eb81dab..07e161a 100644 --- a/dlls/ntdll/exception.c +++ b/dlls/ntdll/exception.c
@@ -66,8 +66,8 @@ * * Handler for exceptions happening inside a handler. */ -static DWORD CALLBACK EXC_RaiseHandler( EXCEPTION_RECORD *rec, EXCEPTION_FRAME *frame, - CONTEXT *context, EXCEPTION_FRAME **dispatcher ) +static DWORD EXC_RaiseHandler( EXCEPTION_RECORD *rec, EXCEPTION_FRAME *frame, + CONTEXT *context, EXCEPTION_FRAME **dispatcher ) { if (rec->ExceptionFlags & (EH_UNWINDING | EH_EXIT_UNWIND)) return ExceptionContinueSearch; @@ -82,8 +82,8 @@ * * Handler for exceptions happening inside an unwind handler. */ -static DWORD CALLBACK EXC_UnwindHandler( EXCEPTION_RECORD *rec, EXCEPTION_FRAME *frame, - CONTEXT *context, EXCEPTION_FRAME **dispatcher ) +static DWORD EXC_UnwindHandler( EXCEPTION_RECORD *rec, EXCEPTION_FRAME *frame, + CONTEXT *context, EXCEPTION_FRAME **dispatcher ) { if (!(rec->ExceptionFlags & (EH_UNWINDING | EH_EXIT_UNWIND))) return ExceptionContinueSearch;
diff --git a/include/wine/exception.h b/include/wine/exception.h index 79c437a..c4bcd4c 100644 --- a/include/wine/exception.h +++ b/include/wine/exception.h
@@ -128,10 +128,10 @@ const struct __tagWINE_FRAME *ExceptionRecord; } __WINE_FRAME; -extern DWORD WINAPI WINE_exception_handler( PEXCEPTION_RECORD record, EXCEPTION_FRAME *frame, - CONTEXT *context, LPVOID pdispatcher ); -extern DWORD WINAPI WINE_finally_handler( PEXCEPTION_RECORD record, EXCEPTION_FRAME *frame, - CONTEXT *context, LPVOID pdispatcher ); +extern DWORD WINE_exception_handler( PEXCEPTION_RECORD record, EXCEPTION_FRAME *frame, + CONTEXT *context, LPVOID pdispatcher ); +extern DWORD WINE_finally_handler( PEXCEPTION_RECORD record, EXCEPTION_FRAME *frame, + CONTEXT *context, LPVOID pdispatcher ); #endif /* USE_COMPILER_EXCEPTIONS */
diff --git a/include/winnt.h b/include/winnt.h index db0e2bd..fd62044 100644 --- a/include/winnt.h +++ b/include/winnt.h
@@ -708,8 +708,8 @@ struct __EXCEPTION_FRAME; -typedef DWORD (CALLBACK *PEXCEPTION_HANDLER)(PEXCEPTION_RECORD,struct __EXCEPTION_FRAME*, - PCONTEXT,struct __EXCEPTION_FRAME **); +typedef DWORD (*PEXCEPTION_HANDLER)(PEXCEPTION_RECORD,struct __EXCEPTION_FRAME*, + PCONTEXT,struct __EXCEPTION_FRAME **); typedef struct __EXCEPTION_FRAME {
diff --git a/win32/except.c b/win32/except.c index 9413c77..be6ee2b 100644 --- a/win32/except.c +++ b/win32/except.c
@@ -110,8 +110,8 @@ * * Exception handler for exception blocks declared in Wine code. */ -DWORD WINAPI WINE_exception_handler( EXCEPTION_RECORD *record, EXCEPTION_FRAME *frame, - CONTEXT *context, LPVOID pdispatcher ) +DWORD WINE_exception_handler( EXCEPTION_RECORD *record, EXCEPTION_FRAME *frame, + CONTEXT *context, LPVOID pdispatcher ) { __WINE_FRAME *wine_frame = (__WINE_FRAME *)frame; @@ -150,8 +150,8 @@ * * Exception handler for try/finally blocks declared in Wine code. */ -DWORD WINAPI WINE_finally_handler( EXCEPTION_RECORD *record, EXCEPTION_FRAME *frame, - CONTEXT *context, LPVOID pdispatcher ) +DWORD WINE_finally_handler( EXCEPTION_RECORD *record, EXCEPTION_FRAME *frame, + CONTEXT *context, LPVOID pdispatcher ) { __WINE_FRAME *wine_frame = (__WINE_FRAME *)frame;