* cygtls.cc (_cygtls::init_exception_handler): Fix comment.
This commit is contained in:
parent
b23bf2fbf9
commit
a04a25195e
|
@ -1,3 +1,7 @@
|
||||||
|
2008-02-27 Corinna Vinschen <corinna@vinschen.de>
|
||||||
|
|
||||||
|
* cygtls.cc (_cygtls::init_exception_handler): Fix comment.
|
||||||
|
|
||||||
2008-02-27 Corinna Vinschen <corinna@vinschen.de>
|
2008-02-27 Corinna Vinschen <corinna@vinschen.de>
|
||||||
|
|
||||||
* (struct __DIR_cache): Switch order of members so that the buffer
|
* (struct __DIR_cache): Switch order of members so that the buffer
|
||||||
|
|
|
@ -269,13 +269,8 @@ _cygtls::init_exception_handler (exception_handler *eh)
|
||||||
At one point this was a loop (el.prev = ⪙). This outsmarted the
|
At one point this was a loop (el.prev = ⪙). This outsmarted the
|
||||||
above behaviour. Unfortunately this trick doesn't work anymore with
|
above behaviour. Unfortunately this trick doesn't work anymore with
|
||||||
Windows 2008, which irremediably gets into an endless loop, taking 100%
|
Windows 2008, which irremediably gets into an endless loop, taking 100%
|
||||||
CPU. That's why we reverted to a normal SEH chain.
|
CPU. That's why we reverted to a normal SEH chain and changed the way
|
||||||
|
the exception handler returns to the application. */
|
||||||
On the bright side, Windows' behaviour is covered by POSIX:
|
|
||||||
|
|
||||||
"If and when the function returns, if the value of sig was SIGFPE,
|
|
||||||
SIGILL, or SIGSEGV or any other implementation-defined value
|
|
||||||
corresponding to a computational exception, the behavior is undefined." */
|
|
||||||
el.prev = _except_list;
|
el.prev = _except_list;
|
||||||
_except_list = ⪙
|
_except_list = ⪙
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue