Piotr Caban
66567dbdf1
ntdll: Add support for collided unwinds.
...
Based on work by Alexandre Julliard.
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-18 11:55:16 +09:00
Alexandre Julliard
3dc0474cfc
include: Android supports sigsetjmp now.
2013-07-30 14:43:34 +02:00
Alexandre Julliard
34ff565708
exception.h: Android doesn't have sigsetjmp.
2013-03-13 16:27:50 +01:00
Alexandre Julliard
2bce0c698e
ntdll: Set the TARGET_UNWIND flag when calling the unwind handler for the target frame.
2012-03-12 13:04:37 +01:00
Michael Stefaniuc
68f90d9697
kernel32/ntdll: Mark a variable as unused.
2011-10-28 19:10:30 +02:00
Alexandre Julliard
655292ae00
include: Move the exception handling support functions to winecrt0 instead of having them inline.
2010-04-08 17:34:17 +02:00
Alexandre Julliard
c152b4e7d1
include: Add a target address for unwinding for platforms that need it.
2009-06-18 15:17:26 +02:00
Alexandre Julliard
58010a9750
include: Update the comments about the Wine exception macros.
2009-01-26 15:07:50 +01:00
Alexandre Julliard
a7a4f84366
include: Add the needed dllimport attribute to the RtlUnwind declaration.
2008-12-22 20:20:48 +01:00
Alexandre Julliard
e21cbfe7e8
include: Add extern "C" to the exported Wine headers.
2008-11-06 10:43:31 +01:00
Alexandre Julliard
94e217891c
exception.h: Make the RtlUnwind wrapper available separately.
...
Also avoid dependency on winternl.h.
2008-07-03 13:08:19 +02:00
Alexandre Julliard
10e795a091
libport: Move the sigsetjmp replacement to exception.h to make it available for Winelib too.
2008-05-26 19:23:43 +02:00
Alexandre Julliard
69c29866c1
exception.h: Preserve registers when calling RtlUnwind.
2008-05-01 11:07:53 +02:00
Alexandre Julliard
c20e8c9005
exception.h: Only push the exception frame after sigsetjmp.
...
Otherwise on Windows longjmp may want to mess with the exception frame.
2008-05-01 11:07:08 +02:00
Alexandre Julliard
0ee44f5e20
ntdll: Make the exception handling functions inline.
2008-05-01 10:57:54 +02:00
Rob Shearman
4a4b1269fa
include: Include excpt.h from wine/exception.h.
...
Some files use wine/exception.h without also including excpt.h, but
excpt.h is needed when using native exception handling.
2008-02-21 20:15:56 +01:00
Rob Shearman
8608e895eb
Add a new convenience macro for an exception handler that handles all exceptions.
...
When using native compiler exceptions, the previous method of doing
this, __EXCEPT(NULL), would expand to __except(
(NULL)(GetExceptionInformation())) which doesn't compile as NULL isn't a
function.
So add a new macro, __EXCEPT_ALL, which works correctly both when using
native compiler exceptions and without and which makes the meaning of
code in which it is used clearer.
2008-02-16 14:58:24 +01:00
Rob Shearman
a82f4dd9b7
Don't use GetExceptionCode and GetExceptionInformation in exception filter functions.
...
When using native compiler exceptions, it isn't valid to use
GetExceptionCode and GetExceptionInformation anywhere other than in the
filter or handler blocks since it would be very hard for the compiler to
work out where to retrieve the exception information from on the stack.
Therefore, remove the WINE_EXCEPTION_FILTER and WINE_FINALLY_FUNC macros
which enabled GetExceptionCode, GetExceptionInformation and
AbnormalTermination to be used inside of the functions they declared and
fix up all callers to access the information directly.
2008-02-16 14:57:44 +01:00
Alexandre Julliard
b1789fc73f
kernel32: Don't save the signal mask in sigsetjmp.
...
This shouldn't be needed anymore now that exceptions are not handled
on the signal stack, and signal mask handling is broken on Mac OS.
2008-02-12 22:39:54 +01:00
Rob Shearman
9f8d379fb3
include: Move Wine-specific EH_* defines from winnt.h to include/wine/exception.h.
2007-12-03 11:54:10 +01:00
Alexandre Julliard
530e765035
include: Exception filters should return LONG, not DWORD.
...
Also move UnhandledExceptionFilter definitions to winbase.h since they
are there in the latest SDK.
2006-09-20 11:26:59 +02:00
Jonathan Ernst
360a3f9142
Update the address of the Free Software Foundation.
2006-05-23 14:11:13 +02:00
Alexandre Julliard
324d86a3af
Exception handling: Added a magic __EXCEPT_PAGE_FAULT macro to make it
...
easier to handle the common case of trapping page faults.
2005-12-16 16:58:47 +01:00
Alexandre Julliard
b0394dea42
Get rid of the WINE_UNUSED macro.
2004-09-01 17:36:04 +00:00
Alexandre Julliard
2e4f0bc9ba
Use sigsetjmp instead of setjmp in Wine internal exception handlers to
...
make sure the signal mask is restored properly.
2003-10-24 04:30:13 +00:00
Dimitrie O. Paun
53f9c21fb7
Use angle brackets (<>) rather than quotes ("") for the include
...
directives in our .h files. This should avoid some potentially nasty
surprises for Winelib apps.
2003-08-28 21:43:34 +00:00
Alexandre Julliard
ee106783d0
Renamed EXCEPTION_FRAME to EXCEPTION_REGISTRATION_RECORD since that
...
seems to be the official name.
2003-08-28 03:07:56 +00:00
Alexandre Julliard
b4a4c05aed
Removed a few more #ifdef __WINE__.
2003-01-04 00:19:17 +00:00
Alexandre Julliard
435e2e63f4
winnt.h should not be self-contained, it must depend on windef.h so
...
that STRICT works correctly; moved some definitions back to windef.h
where they belong, and removed a couple of definitions that don't
exist on Windows.
2002-12-10 22:56:43 +00:00
Lionel Ulmer
bdb44555a3
Raise an exception if any Wine or Winelib code does an assert.
2002-10-28 23:56:58 +00:00
Alexandre Julliard
0799c1a780
Added LGPL standard comment, and copyright notices where necessary.
...
Global replacement of debugtools.h by wine/debug.h.
2002-03-09 23:29:33 +00:00
Patrik Stridvall
f94462fb75
Move __stdcall/__cdecl to the right place.
2002-01-31 23:22:07 +00:00
Alexandre Julliard
5016e921f5
Added support for cleaning up the TEB from inside the exiting thread.
2002-01-07 18:04:07 +00:00
Alexandre Julliard
634824be58
Raise an exception when a stub entry point is called.
2000-10-26 22:03:34 +00:00
Alexandre Julliard
83f52d11c1
Moved all Win16 definitions out of the standard Windows headers.
2000-09-26 22:20:14 +00:00
Alexandre Julliard
b59627c89f
Added support for exception handling while in vm86 mode.
...
Fixed a couple of bugs in vm86 support.
2000-09-24 03:11:54 +00:00
Alexandre Julliard
45b2c868bb
Added preliminary support for switching to vm86 mode with proper
...
exception handling.
2000-09-18 02:15:07 +00:00
Alexandre Julliard
8328a9d67d
Fixed finally handler name.
2000-08-23 19:19:35 +00:00
Alexandre Julliard
3850c1ae16
Moved most USER string functions to dlls/user.
...
Cleaned up a few more inter-dll dependencies.
2000-08-06 02:42:46 +00:00
Francois Gouget
ae41e8c804
Reordered the CALLBACK and WINAPI directives so that it compiles with
...
old g++ versions.
2000-06-11 20:07:58 +00:00
Ulrich Weigand
7d43bceb7e
Moved debugger to libwine to make it available to WineLib apps.
...
Try to invoke external debugger if internal debugger crashes.
Try to handle early invocation of debugger more gracefully.
2000-01-30 21:16:45 +00:00
Ulrich Weigand
eb94c7d2c4
Adapted to new register function handling.
1999-11-13 23:54:04 +00:00
Ulrich Weigand
ae8342df48
Bugfix: Exception handlers are *not* WINAPI.
1999-11-10 19:42:13 +00:00
Alexandre Julliard
3d06d20bab
Moved all signal support to a new platform-specific file.
...
Make use of the per-thread signal stack (Juergen Lock).
Fixed %fs in signal handler for non FS_sig case (Ulrich Weigand).
1999-09-27 10:58:45 +00:00
Lionel Ulmer
3b8a724228
Suppressed compiler warning by using the 'unused' attribute.
1999-07-24 12:08:20 +00:00
Alexandre Julliard
3742d77fdb
Fixes for non-i386 compiling.
1999-06-26 18:30:03 +00:00
Alexandre Julliard
58371aa361
A few optimizations.
1999-06-18 18:26:35 +00:00
Alexandre Julliard
0691998e45
Fixed a few bugs, and improved the exception macros (based on
...
suggestions by Sergei Turchanov).
1999-05-14 18:21:55 +00:00
Alexandre Julliard
3b3ff2bb06
Added macros and definitions for using exception inside Wine or
...
Winelib code.
1999-05-12 13:10:39 +00:00