[2/5] ntdll: Avoid recursive exception handler calls when handling guard pages.

Sebastian Lackner sebastian at fds-team.de
Sat Oct 11 13:56:36 CDT 2014

The ATL check leads to problems when a page is protected with guard page protection.
raise_segv_exception is called with EXCEPTION_EXECUTE_FAULT. The ATL check tries to
read the memory, and triggers another exception handler. This time the virtual_handle_fault
check is executed, and removes the guard page protection. Afterwards, when the ATL
check returns, the exception is _not_ catched by virtual_handle_fault, but instead
passed to the application.

 dlls/kernel32/tests/virtual.c |  2 --
 dlls/ntdll/signal_i386.c      | 10 ++++++----
 2 files changed, 6 insertions(+), 6 deletions(-)

-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0002-ntdll-Avoid-recursive-exception-handler-calls-when-h.patch
Type: text/x-patch
Size: 3636 bytes
Desc: not available
URL: <http://www.winehq.org/pipermail/wine-patches/attachments/20141011/f390adc1/attachment-0001.bin>

More information about the wine-patches mailing list