include: Update the comments about the Wine exception macros.

This commit is contained in:
Alexandre Julliard 2009-01-26 15:07:50 +01:00
parent 4475045fe1
commit 58010a9750
1 changed files with 10 additions and 7 deletions

View File

@ -37,7 +37,7 @@ extern "C" {
* { * {
* do some stuff that can raise an exception * do some stuff that can raise an exception
* } * }
* __EXCEPT(filter_func,param) * __EXCEPT(filter_func)
* { * {
* handle the exception here * handle the exception here
* } * }
@ -49,15 +49,18 @@ extern "C" {
* { * {
* do some stuff that can raise an exception * do some stuff that can raise an exception
* } * }
* __FINALLY(finally_func,param) * __FINALLY(finally_func)
* *
* The filter_func must be defined with the WINE_EXCEPTION_FILTER * The filter_func and finally_func functions must be defined like this:
* macro, and return one of the EXCEPTION_* code; it can use *
* GetExceptionInformation and GetExceptionCode to retrieve the * LONG CALLBACK filter_func( PEXCEPTION_POINTERS __eptr ) { ... }
*
* void CALLBACK finally_func( BOOL __normal ) { ... }
*
* The filter function must return one of the EXCEPTION_* code; it can
* use GetExceptionInformation() and GetExceptionCode() to retrieve the
* exception info. * exception info.
* *
* The finally_func must be defined with the WINE_FINALLY_FUNC macro.
*
* Warning: inside a __TRY or __EXCEPT block, 'break' or 'continue' statements * Warning: inside a __TRY or __EXCEPT block, 'break' or 'continue' statements
* break out of the current block. You cannot use 'return', 'goto' * break out of the current block. You cannot use 'return', 'goto'
* or 'longjmp' to leave a __TRY block, as this will surely crash. * or 'longjmp' to leave a __TRY block, as this will surely crash.