Commit Graph

343 Commits

Author SHA1 Message Date
Alexandre Julliard 44ed5c0423 ntdll: Use the exception code as exit status when no debugger is present. 2009-10-13 14:15:27 +02:00
Alexandre Julliard 9585bf6700 ntdll: Remap EXCEPTION_EXECUTE_FAULT only after the internal handlers have been run. 2009-09-23 14:20:17 +02:00
Alexandre Julliard 8101a2fa1e ntdll: Move the abort_thread() function to the CPU-specific files to allow redefining it. 2009-08-28 11:54:50 +02:00
Michael Karcher 9476071fd2 ntdll: Don't send EXCEPTION_EXECUTE_FAULT to Windows programs that didn't enable DEP. 2009-08-18 11:19:46 +02:00
Alexandre Julliard 0c46341543 ntdll: Add call frame annotations in x86 assembly code. 2009-06-25 12:05:09 +02:00
Alexandre Julliard 0610549529 ntdll: Move all thread exit processing to exit_thread(), and make RtlExitUserThread() CPU-specific. 2009-06-18 17:06:21 +02:00
Alexandre Julliard f124c7cc38 ntdll: Simplify the thread startup routine and make it CPU-specific. 2009-06-18 17:01:44 +02:00
Alexandre Julliard e65ebee63f ntdll: Add appropriate stdcall decorations to assembly functions. 2009-06-15 13:42:26 +02:00
Alexandre Julliard c5a57e7d13 ntdll: Move NtRaiseException and RtlUnwind implementations to the CPU-specific files. 2009-04-30 13:23:15 +02:00
Alexandre Julliard 7f9750550a ntdll: Set the exception address to the program counter in RtlRaiseException. 2009-04-10 13:17:12 +02:00
Alexandre Julliard f4eee1c731 ntdll: Move the RtlRaiseException implementation into the respective platform-specific files. 2009-04-10 13:14:05 +02:00
Alexandre Julliard 48199d7074 ntdll: Add a raise_status function and avoid exporting __regs_RtlRaiseException. 2009-04-10 13:09:06 +02:00
Alexandre Julliard 5316dd011f server: Define a generic context structure instead of using the platform-specific version. 2009-04-08 19:59:23 +02:00
Alexandre Julliard 129d83fffb ntdll: Add separate signal definitions for OpenBSD. 2009-04-01 12:37:05 +02:00
Alexandre Julliard 75be87dd75 ntdll: Move the copy_context function into the respective CPU-specific files. 2009-03-13 11:31:25 +01:00
Alexandre Julliard abbf38ccd9 ntdll: Fix a couple of warnings on Solaris. 2009-03-05 16:16:25 +01:00
Alexandre Julliard cc933f586a ntdll: Moved exit_thread and abort_thread functions to thread.c. 2009-02-20 18:07:41 +01:00
Alexandre Julliard 66255772fc ntdll: Move the CPU-specific handling of current TEB to the respective signal files. 2009-02-18 13:04:50 +01:00
Austin English 198b8f736a ntdll: Add support for NetBSD. 2009-01-19 13:36:26 +01:00
Alexandre Julliard 14c452fe78 ntdll: Replaced get_cpu_context by RtlCaptureContext. Implemented it for x86_64. 2009-01-06 17:50:34 +01:00
Alexandre Julliard 4986f42b9f ntdll: Change the DEFINE_REGS_ENTRYPOINT macro to use a number of args instead of a size.
Also assume that all register functions are stdcall.
2009-01-06 12:49:18 +01:00
Henri Verbeet 03468a4f05 ntdll: Don't throw masked FPU exceptions.
When an FPU exception is masked the appropriate flag in the status
word will still be set, so get_fpu_code() should mask the exception
flags in the status word with the exception flags in the control word.
2009-01-05 12:34:39 +01:00
Henri Verbeet 5e418a9072 ntdll: Fix ExceptionAddress for FPU exceptions.
ExceptionAddress isn't the same as EIP for FPU exceptions, since the
exception will be thrown on the next FPU instruction, rather than the
instruction that caused the exception.
2009-01-05 12:34:33 +01:00
Maarten Lankhorst 768160e944 ntdll: Make all exported wine functions CDECL. 2008-12-17 15:02:25 +01:00
Alexandre Julliard 81b9ca5dbd ntdll: Pass the error code to VIRTUAL_HandleFault, and allow it to ignore the exception.
Also rename it to virtual_handle_fault for consistency.
2008-11-25 12:02:16 +01:00
Michael Stefaniuc 26bba27dc0 ntdll: Don't cast void pointers to other pointer types. 2008-10-24 14:25:01 +02:00
Alexandre Julliard eac613f604 ntdll: Use the generic int 0x91 syscall on Solaris so that it works on all CPUs. 2008-07-29 20:41:30 +02:00
Alexandre Julliard e5566691e2 ntdll: Add some workarounds for Solaris signal handling breakages. 2008-07-10 18:18:16 +02:00
Alexandre Julliard 13fbba6847 ntdll: Always restore the %gs register from the saved value in thread data. 2008-07-08 21:08:54 +02:00
Alexandre Julliard 531ff0be26 ntdll: Split the signal setup into process-wide and thread-specific routines. 2008-07-03 20:18:23 +02:00
Alexandre Julliard 3499cb96b6 ntdll: Add local defines for VIF and VIP flags. 2008-06-02 12:13:33 +02:00
Alexandre Julliard cc33f6c8a5 ntdll: Add a guard page at the bottom of the stack and raise a stack overflow exception when hit. 2008-04-01 17:40:37 +02:00
Alexandre Julliard 061bfac076 ntdll: Add support for handling page faults caused by guard pages on the thread stack. 2008-04-01 17:37:24 +02:00
Alexandre Julliard 4ce9af2ba5 ntdll: Clear the direction flag before calling exception handlers. 2008-03-20 14:27:35 +01:00
Alexandre Julliard 5625c6079e Get rid of the global thread.h header. 2008-03-01 11:57:00 +01:00
Alexandre Julliard 0375b7a1f3 ntdll: Don't fetch extended FPU context if there's no FPU context at all. 2008-01-22 10:20:12 +01:00
Alexandre Julliard 2cba11aa6f ntdll: Don't try to restore extended fpu context if not supported.
Remove an extra fpu context save left over from testing.
2008-01-18 12:02:31 +01:00
Alexandre Julliard 992de9f487 ntdll: Mac OS support for saving and restoring the extended FPU context on exceptions. 2008-01-15 20:36:40 +01:00
Alexandre Julliard bd352bcd1c ntdll: Linux support for saving and restoring the extended FPU context on exceptions. 2008-01-15 20:36:40 +01:00
Eric Pouech aff968fb47 valgrind: Made Wine compliant will latest Valgrind macros (the one removed from 3.3.0 and deprecated since 3.2.0). 2007-12-24 13:30:39 +01:00
Alexandre Julliard 3b244b95b2 server: Use SIGQUIT instead of SIGTERM to terminate a thread.
This allows keeping the default SIGTERM behavior of killing the whole
process.
2007-12-20 12:19:35 +01:00
Peter Beutner db28edc790 ntdll: Better trap exception handling. 2007-11-12 14:14:28 +01:00
Peter Beutner fc5316760b ntdll: Don't try to handle kill(SIGTRAP). 2007-11-12 14:14:23 +01:00
Alexandre Julliard 0156dbba4f ntdll: Increase the signal stack size to avoid crashes on nested signals. 2007-11-08 13:53:47 +01:00
Francois Gouget b2bc712323 Assorted spelling fixes. 2007-09-27 20:12:53 +02:00
Alexandre Julliard 44c9758d05 ntdll: Move private data to make room in the TEB for the activation context data. 2007-07-19 16:56:10 +02:00
Alexandre Julliard b5953831c3 ntdll: Use the standard exception handling for vm86 GP faults too. 2007-06-25 19:47:58 +02:00
Alexandre Julliard c5134b77c6 ntdll: Support setting the CPU context on the current thread without segment registers. 2007-05-08 20:09:25 +02:00
Andrew Talbot ab2a48ae43 ntdll: Remove superfluous semicolons. 2007-04-12 16:16:58 +02:00
Andrew Talbot 0108667754 ntdll: Replace inline static with static inline. 2007-03-17 20:03:57 +01:00
Alexandre Julliard cdb833bf33 ntdll: Fixed some exception codes and parameters. 2007-03-14 12:02:43 +01:00
Alexandre Julliard 7d12fbcc5b ntdll: Changed some Solaris defines so that we can access the signal error code. 2007-03-14 09:53:59 +01:00
Alexandre Julliard 0d16a7bbe4 Fixed some compilation issues on Mac OS X Leopard. 2007-03-12 16:14:18 +01:00
Peter Beutner 4a831ec716 ntdll: Handle SIMD exceptions. 2007-03-09 11:53:26 +01:00
Alexandre Julliard c388c58b9f ntdll: Make the server signal mask global. 2007-01-18 12:20:56 +01:00
Joel Parker 2319999a05 Remove redundant semicolons for ANSI compatibility. 2007-01-17 11:58:15 +01:00
Peter Beutner 6f88a7b7d4 ntdll: Fix single stepping over popf instruction. 2006-12-04 12:23:20 +01:00
Hans Leidekker f7b0ba7aa7 ntdll: Win64 printf format warning fixes. 2006-10-18 12:35:26 +02:00
Marcus Meissner 86c0bb3be5 ntdll: Clear alignment check flag before entering exception handler. 2006-10-03 11:24:52 +02:00
Marcus Meissner 57a04062fe ntdll: Align stack to 4 bytes. 2006-09-28 12:23:32 +02:00
Robert Shearman 5881d91cfc ntdll: Avoid crashing in check_atl_thunk if an execution exception was raised with a bad address. 2006-09-28 11:55:50 +02:00
Marcus Meissner 07d84bf656 ntdll: Avoid ebx being clobbered in exception handler. 2006-09-25 21:27:14 +02:00
Alexandre Julliard a27d0aa4e9 include: Added definitions for the fault address exception information. 2006-09-20 11:27:53 +02:00
Alexandre Julliard 0839ea104a ntdll: Added sysctl to make the signal stack per-thread on MacOS. 2006-09-07 18:08:46 +02:00
Alexandre Julliard c627cbd765 ntdll: Remove some macros and clean up the code now that all platforms use siginfo. 2006-08-11 14:45:11 +02:00
Alexandre Julliard 38cf3a4305 ntdll: Switch linux to siginfo-style signal handling. 2006-08-11 14:14:38 +02:00
Alexandre Julliard ea08ec55b2 ntdll: Get rid of the Linux legacy signal stack switching.
It doesn't work right in 32-bit code anyway.
2006-08-07 16:45:45 +02:00
Tijl Coosemans 148120f21e ntdll: Cleanup signal_i386.c a bit and fix *BSD. 2006-08-07 15:57:49 +02:00
Jonathan Ernst 360a3f9142 Update the address of the Free Software Foundation. 2006-05-23 14:11:13 +02:00
Alexandre Julliard d2ad6f8355 ntdll: Get registers on the client side for NtGetContextThread on the current thread. 2006-04-20 15:40:28 +02:00
James Hawkins 14faf12845 ntdll: Return error if the signal index equals the size of the array. 2006-04-07 11:46:12 +02:00
Alexandre Julliard a1f0f39174 ntdll: Save FPU context for all exceptions. 2006-04-03 21:39:33 +02:00
Petr Tesarik e748a77e1a ntdll: Fix debug exceptions from VM86.
- Set ContextFlags accordingly in save_vm86_context().
- Raise debug exceptions correctly for debug exceptions.
- Do not clear TF bit for VM86-generated debug exceptions.
2006-03-27 11:30:50 +02:00
Detlef Riekenberg 43a0f0c85a ntdll: Avoid compile error caused by a single quote. 2006-02-21 11:12:28 +01:00
Robert Shearman 3e47c82e02 ntdll: Add a define for SYS_sigaction to __NR_sigaction.
Print an error if __NR_sigaction doesn't exist as this means the wrong
syscall header is being used.
2006-02-20 20:31:51 +01:00
Eric Pouech c67bc2260c A couple of new valgrind instrumentations for better support. 2006-02-14 13:06:29 +01:00
Alexandre Julliard 57550776ce ntdll: Added emulation of ATL thunks for platforms with NX support. 2006-02-10 15:13:59 +01:00
Robert Millan 8800352477 Enable for GNU/kFreeBSD the same kernel-specific interface/parameter
that is used with FreeBSD.
2006-02-05 13:06:50 +01:00
Robert Millan 62af0706ff ntdll: Rename i386 CPU trap codes to avoid collision with system headers. 2006-02-03 12:30:55 +01:00
Eric Pouech 2e0b5336f6 Suppress some false-positives reported by valgrind. 2006-01-27 16:17:51 +01:00
Alexandre Julliard 4ce433d826 ntdll: Move the %gs register to the ntdll_thread_regs structure. 2006-01-20 16:54:11 +01:00
Alexandre Julliard a19e3eeb20 ntdll: Move the TEB register to the ntdll_thread_regs structure. 2006-01-20 16:18:06 +01:00
Alexandre Julliard 2878d99216 ntdll: Add debug registers to the context of all exceptions.
Maintain a local cache of the debug registers to avoid server calls
where possible.
2006-01-13 13:58:14 +01:00
Alexandre Julliard 2654be08d5 ntdll: Handle NtSetContextThread on the client side (as far as
possible) when setting the context of the current thread.
2006-01-11 20:20:32 +01:00
Alexandre Julliard 8651ceb18e ntdll: Make __wine_call_from_32_restore_regs take a context pointer.
Changed exception raise functions to call it explicitly.
2005-12-19 09:59:50 +01:00
Alexandre Julliard 07f84d0458 ntdll: More compatible exception information for protection faults.
Added a bunch of test cases.
2005-12-16 16:27:39 +01:00
Alexandre Julliard f3dad37ba2 TEB.StackLimit should not include the guard page. 2005-12-12 17:28:32 +01:00
Alexandre Julliard cc01e8ff05 Preserve 16-byte stack alignment in the various assembly
functions. Needed for MacOSX.
2005-11-23 19:55:06 +01:00
Ken Thomases a63acd71c8 Updated context definitions for the latest Darwin/x86. 2005-11-15 18:15:56 +00:00
Alexandre Julliard 86f8aef511 Use proper asm name for external functions. 2005-11-15 12:05:45 +00:00
Alexandre Julliard 73c72390f8 Fixed Get/SetThreadContext to work properly on suspended threads.
Added a test case.
2005-11-02 20:54:12 +00:00
Robert Shearman 2a02dd1f05 Make the call exception handler function more compatible with NT and
with what Shrinker expects.
2005-11-01 09:21:03 +00:00
Marcus Meissner 98ed5585c7 Added assembly implementation of EXC_CallHandler. 2005-10-31 14:08:05 +00:00
Alexandre Julliard 7955fb01d7 Clear the single-step flag in setup_exception instead of in the
SIGTRAP handler to avoid having the assigmnent optimized out.
2005-10-04 15:56:34 +00:00
Alexandre Julliard 2eaff5074f Fixed exception handling on MacOS. 2005-09-27 09:36:15 +00:00
Alexandre Julliard fb9cead92b Support arbitrary sizes for the thread signal stack, and set the
default size from the MINSIGSTKSZ constant.
2005-09-14 10:36:58 +00:00
Glenn Wurster cee9a0f2a3 Make stack check work if stack is a small value. 2005-08-25 19:20:21 +00:00
Alexandre Julliard 2e1f8fc8dd Some fixes for the Darwin build. 2005-07-03 11:24:54 +00:00
Mike McCormack 04f9f1b066 Don't include winbase.h or winerror.h when not necessary. 2005-06-21 09:52:40 +00:00
Alexandre Julliard ab29aa2126 Moved the ntdll per-thread data out of the TEB into a private
structure stored in TEB.SystemReserved2.
2005-06-06 20:04:33 +00:00
Alexandre Julliard e4412a618c Removed the special casing of kernel32 and ntdll for the TEB
definition in winternl.h.
2005-05-16 17:52:10 +00:00
Alexandre Julliard d876893fc1 Store the 16-bit stack pointer in the WOW32Reserved TEB field. 2005-05-14 12:16:46 +00:00
Alexandre Julliard 26050b49d5 Prefix the internal name of all register functions with __regs_ for
better consistency and to make automated checking possible.
2005-05-07 18:10:30 +00:00
Mike McCormack f92fff66a2 Implemented NtSignalAndWaitForSingleObject. 2005-04-24 17:35:52 +00:00
Dmitry Timoshkov 0497af09a7 Match RaiseException and EXCEPTION_RECORD to SDK definitions. 2005-02-24 13:15:36 +00:00
Peter Chapman 505dfdefb5 Fix up several inline assembler blocks so that they produce correct
code with the -fomit-frame-pointer gcc flag.
2004-12-02 18:19:25 +00:00
Pierre d'Herbemont ed7a2bab5f Added signal support for Darwin/i386. 2004-08-24 02:26:59 +00:00
Markus Amsler b5b8810e99 Pass debug exceptions to winedos. 2004-08-04 19:08:19 +00:00
Dmitry Timoshkov c2de5fbcb9 Set SA_RESTART sigaction flag for other BSDs beside NetBSD. 2004-02-24 01:21:56 +00:00
Robert Lunnon 93be53744e Save UESP instead of ESP where UESP defined. 2004-01-16 02:00:24 +00:00
Alexandre Julliard 8b39cea352 Fixed __siginfo type for Solaris (based on a patch by Robert Lunnon). 2004-01-14 05:25:07 +00:00
Dimitrie O. Paun 2eaefbd1a4 Move content of global.h into the appropriate private headers. 2003-12-08 21:58:55 +00:00
Alexandre Julliard 8fb98a41e0 Added wine_ldt_is_system() to replace the IS_SELECTOR_SYSTEM macro,
and stop exporting the WINE_LDT_FIRST_ENTRY constant.
2003-11-17 20:12:56 +00:00
Jukka Heinonen d7ee5f3f31 Fix race in real mode event handling.
Merge real mode pending event checking routines.
Remove some obsolete code.
2003-11-11 00:44:10 +00:00
Alexandre Julliard 4dba172e55 Added server_abort_thread to replace SYSDEPS_AbortThread.
Removed no longer used SIGNAL_Block and SIGNAL_Reset.
Moved some internal ntdll definitions to ntdll_misc.h.
2003-11-06 00:08:05 +00:00
Alexandre Julliard 063cff8686 Use the signal stack pointer to determine the current thread.
Converted the SIGUSR2 handler to use setup_exception (probably still
not working properly).
2003-11-05 00:52:29 +00:00
Alexandre Julliard 7924f421e9 Allocate the TEB and signal stack separately from the main stack.
Dynamically allocate the initial TEB too so that it is properly
page-aligned.
2003-11-04 04:50:18 +00:00
Alexandre Julliard 0f95d5498d Fixed race in %gs selector restoring during vm86 mode return.
Minor cleanups.
2003-10-30 23:15:56 +00:00
Alexandre Julliard 07931f2d70 Removed no longer needed SIGNAL_Unblock() function. 2003-10-28 21:46:46 +00:00
Alexandre Julliard 4cb001967a Switch back to the main process stack before calling exception
handlers.
2003-10-28 00:30:55 +00:00
Alexandre Julliard 8824c38e9e Simplified signal stack allocation a bit, and avoid allocating it on
non-i386 platforms.
2003-10-22 03:26:53 +00:00
Jukka Heinonen 46f29944c3 Remove races from DPMI async event handling. 2003-10-14 05:20:34 +00:00
Alexandre Julliard 67d9f38059 Added __wine_set_signal_fs function to avoid sharing the
SYSLEVEL_Win16CurrentTeb variable between kernel and ntdll.
On the kernel side, replaced SYSLEVEL_Win16CurrentTeb by
CallTo16_TebSelector stored directly in the asm relay code to avoid a
run-time relocation.
2003-10-08 22:59:22 +00:00
Alexandre Julliard bff860c4b1 Moved synchronization and syslevel routines to dlls/kernel. 2003-09-18 04:39:13 +00:00
Alexandre Julliard 1479aebda3 Moved instruction emulation to dlls/kernel. 2003-09-17 04:34:31 +00:00
Alexandre Julliard e37c6e18d0 Fixed header dependencies to be fully compatible with the Windows
headers (with help from Dimitrie O. Paun).
2003-09-05 23:08:26 +00:00
Alexandre Julliard bf97962a51 Avoid including stackframe.h if it's not needed. 2003-08-27 02:52:17 +00:00
Jukka Heinonen 2a3ce4c425 Start processing asynchronous DOS events in DPMI mode. 2003-07-01 03:37:41 +00:00
Alexandre Julliard 217fdab78f Implemented NtDelayExecution and make Sleep call it.
The handle count must not be 0 in NtWaitForMultipleObjects (spotted by
Troy Rollo).
2003-06-30 21:00:15 +00:00
Jukka Heinonen ae906923a1 Remove SIGALRM handler.
Reserve TEB field for DPMI virtual interrupt flag.
2003-06-16 01:18:26 +00:00
Eric Pouech 8638b26483 Correctly convert into EXCEPTION_RECORD SIGTRAPs received from
DebugBreakProcess.
2003-06-07 00:33:13 +00:00
Yorick Hardy 6dd0685f74 Use SA_RESTART on NetBSD. 2003-06-04 20:15:10 +00:00
Alexandre Julliard 0b34697abb Made INSTR_EmulateInstruction return the exception code.
Don't allow intXX instructions from 32-bit code (based on a patch by
Jukka Heinonen).
2003-05-14 19:41:16 +00:00
Alexandre Julliard ebe67a2864 Added support for retrieving page fault address on Solaris (based on a
patch by Robert Lunnon).
2003-05-06 18:50:08 +00:00
Alexandre Julliard 088bcf9ca5 Implemented NtQueueApcThread, and changed the server APC interface to
always take 3 parameters.
Implemented a number of other ntdll thread functions, and use them
from the kernel ones.
2003-04-04 22:26:34 +00:00
Eric Pouech 14d04b608c No longer call WaitFor*Object* from ntdll (but NtWait*Object*). 2003-04-03 23:57:11 +00:00
Yorick Hardy 14251f1b48 Added fields from NetBSD struct sigcontext on i386. 2003-03-28 00:29:45 +00:00
Alexandre Julliard 78675ba234 Store %gs in the TEB on every call to 16-bit code, and don't restore
it from the TEB for signals that did not happen in 16-bit code.
2003-03-25 00:36:16 +00:00
Alexandre Julliard a993df861c Make sure changes to the debug registers while inside a SIGTRAP
exception are taken into account (based on a patch by Alex Pasadyn).
2003-03-24 19:31:10 +00:00
Alexandre Julliard 6a26e3f7ac Split signal blocking code out of SIGNAL_Reset into SIGNAL_Block.
Added SIGTERM handler.
2003-03-21 23:45:26 +00:00
Alexandre Julliard d04ccb8ebe Use SIGUSR1 instead of SIGSTOP to suspend threads. 2003-03-04 22:18:43 +00:00
Alexandre Julliard 551797bc57 Properly save/restore %gs register across 16-bit calls. 2003-02-27 21:11:13 +00:00
Alexandre Julliard b4a4c05aed Removed a few more #ifdef __WINE__. 2003-01-04 00:19:17 +00:00
Jukka Heinonen bbb7dc0fad When asynchronous signals are blocked, block also SIGUSR2.
Fix race that made signal handler forget to restore FS register.
2002-12-13 23:28:01 +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
Marcus Meissner 727c31d7a0 Only enable VM86 mode if we have the <sys/vm86.h> include file. 2002-11-08 18:53:32 +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
Patrik Stridvall 9c1de6de30 Moved all the content of the DDK files ntdef.h and ntddk.h to
winternl.h.
2002-09-12 22:07:02 +00:00
Patrik Stridvall a62a26ced0 Fixed some issues found by winapi_check. 2002-09-09 19:26:55 +00:00
Patrik Stridvall d016f819f1 Added include protection for unistd.h and sys/time.h. 2002-08-17 00:43:16 +00:00
Patrik Stridvall 4325554aef Fixed some issues found by winapi_check. 2002-08-09 01:07:29 +00:00
Rafael Kitover ac81d02a58 Portability fixes for Cygwin. 2002-07-31 20:04:20 +00:00
Eric Pouech 3d4d7e0153 Added a generic mechanism to set up hooks for dispatching signal
handlers outside ntdll.
2002-07-31 18:46:09 +00:00
Alexandre Julliard 65c6d38581 Replace all uses of PREFIX and @function by the __ASM_NAME and
__ASM_FUNC macros.
2002-07-22 20:47:11 +00:00
François Gouget 103295c769 Reset signals to SIG_DFL before starting a child process. 2002-06-13 21:57:38 +00:00
Eric Pouech 0d588a4a82 Fixed DebugBreakProcess (now generates EXCEPTION_BREAKPOINT instead of
EXCEPTION_SINGLE_STEP).
2002-06-02 21:36:39 +00:00
Eric Pouech 93bfa0d6b1 Implementation for console control events (includes process groups
support).
2002-06-02 21:22:22 +00:00
Vincent Béron 9a62491660 Removed trailing whitespace. 2002-05-31 23:06:46 +00:00
Alexandre Julliard 59008670be Moved the selector access functions out of winnt.h into libwine. 2002-05-16 20:32:16 +00:00
Alexandre Julliard 894b188fcf Moved __ASM_GLOBAL_FUNC macros and interlocked functions to port.[ch] 2002-04-25 21:40:56 +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
Alexandre Julliard 50c6b74a34 Added SIGNAL_Reset function. 2002-01-07 18:02:35 +00:00
Ove Kaaven 4eb0bebd90 Fixed vm86_enter race conditions. 2002-01-04 21:57:04 +00:00
Ove Kaaven bf1e9682f4 Protect against an interrupt-pending signal recursion. 2001-10-28 21:16:22 +00:00
Patrik Stridvall 4b1574577d - Made sure that the files that contains the declarations
of the implementated functions are included.
- Corrected mismatching prototypes.
- Cleaned up the include section.
2001-07-23 23:50:18 +00:00
Patrik Stridvall a274dd9105 Fixed some issues found by winapi_check. 2001-07-02 01:22:10 +00:00
Alexandre Julliard 7f862cb2d2 Don't compile vm86-specific code on platforms that don't support it. 2001-06-25 21:08:47 +00:00
Ove Kaaven 6e33f63e4a Extended __wine_enter_vm86 to handle pending interrupts. 2001-06-21 00:39:34 +00:00
Patrik Stridvall 3ca9823941 Documentation ordinal fixes. 2001-06-20 23:03:14 +00:00
Ove Kaaven e4a98ec195 Block SIGINT and SIGALRM in signal handlers. 2001-06-15 19:43:15 +00:00
Bang Jun-Young 284a78f5cc Do not use internal exception codes defined by Wine with NetBSD,
rather use native ones from /usr/include/i386/trap.h. Note that T_MCHK
is not supported by NetBSD.
2001-05-09 19:45:07 +00:00
Ove Kaaven 0b6c6e7605 Fixed small race condition between vm86_enter() and signal handling.
Made separate save_vm86_context and restore_vm86_context functions.
2000-12-29 03:29:31 +00:00
Dimitrie O. Paun 2af03e45b5 Do not include sys/ptrace.h and sys/user.h unconditionally.
Other portability fixes.
2000-11-29 20:04:09 +00:00
Alexandre Julliard ab687979fd Moved standard syslevel APIs declaration to winbase.h.
Use exported syslevel function wherever possible.
Moved SEGPTR declaration to windef16.h.
2000-11-15 23:41:46 +00:00
Joerg Mayer 650ba4df23 Move inline and static to the beginning of declarations. 2000-10-29 18:06:04 +00:00
Alexandre Julliard 5df110185a Fixed typo due to merge error. 2000-10-26 19:30:11 +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
Ove Kaaven 9b2060afab Change the V86BASE macro to call DOSMEM_MemoryBase() instead of using
the ugly Dr7 hack.
2000-07-23 13:36:41 +00:00
Dave Hawkes 52b6bd95d3 Exception handling for SIGFPE must always clear the FPU interrupt
status.
2000-06-23 16:49:09 +00:00
Alexandre Julliard 42cc2bdf46 Setup signal handling and exceptions only after REQ_INIT_PROCESS_DONE
has been sent, to avoid deadlocking the debugger.
2000-06-07 03:49:41 +00:00
Alexandre Julliard 0045def764 Fixed signal stack handling on Linux when sigaltstack is available.
Added a direct sigaltstack syscall to work-around the glibc bug.
2000-04-13 19:25:52 +00:00
Alexandre Julliard 51f6aeb462 Implemented guard pages and stack overflow exceptions. 2000-04-13 17:21:36 +00:00
Patrik Stridvall d628f43693 Fixed some ANSI C violations. 2000-03-24 20:42:08 +00:00
Alexandre Julliard 7d0dd5f327 Added DbgBreakPoint. Fixed exception record contents on SIGTRAP. 2000-03-07 13:10:21 +00:00
Alexandre Julliard 916f975624 Improved the selector get/set functions.
Support ANSI-compatible inline asm (with the help of Patrik Stridvall).
2000-02-26 16:51:13 +00:00
Alexandre Julliard 383da68cf9 Optimized debugging API to reduce code size. 2000-02-10 22:15:21 +00:00
Juergen Lock ba6d54a4a6 Set/use fs/gs from the sigcontext struct, the corresponding kernel
change now finally has been MFC'd to -stable.
1999-11-25 23:17:58 +00:00
Niels Kristian Bech Jensen 1d5bc469cc Removed extra #include statements. 1999-11-21 02:14:36 +00:00
Ulrich Weigand eb94c7d2c4 Adapted to new register function handling. 1999-11-13 23:54:04 +00:00
Patrik Stridvall 282b13bcdc Solaris compile fix. 1999-10-24 21:29:48 +00:00
Alexandre Julliard de5e1af2bd Support TRAP_sig for FreeBSD (with the help of Juergen Lock). 1999-09-28 13:15:27 +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