* include/exceptions.h (exception_list): Revert previous change. Windows

doesn't care.
(exception_handler): Use real exception_list parameter type rather than void *
* tlsoffsets.h: Regenerate.
* cygtls.h (_cygtls::handle_exceptions): Use real exception_list parameter type
rather than void *.
(handle_threadlist_exception): Ditto.
(init_exception_handler): Ditto.
* cygtls.cc (_cygtls::handle_threadlist_exception ): Ditto.
(_cygtls::init_exception_handler): Add kludge to terminate linked list with a
loop, which seems to solve problem of RtlUnwind causing problems
* exceptions.cc (rtl_unwind): Use real exception_list parameter type rather
than void *.
(_cygtls::handle_exceptions): Ditto.
This commit is contained in:
Christopher Faylor
2005-12-03 05:01:51 +00:00
parent 087f4a61d2
commit 49085f6f16
6 changed files with 91 additions and 71 deletions

View File

@ -99,14 +99,13 @@ to install your own exception filter. This one is documented.
a teensy bit of detail of the innards of exception handling (i.e. what we
have to do). */
typedef int (exception_handler)
(EXCEPTION_RECORD *, void *, CONTEXT *, void *);
typedef int (exception_handler) (EXCEPTION_RECORD *, struct _exception_list *,
CONTEXT *, void *);
typedef struct _exception_list
{
struct _exception_list *prev;
exception_handler *handler;
unsigned long stuff[8];
} exception_list;
#ifdef __cplusplus