[PATCH 1/1] ntdll: fix up instruction pointer in context inside raise_exception

Peter Oberndorfer kumbayo84 at arcor.de
Tue May 22 11:28:53 CDT 2007

i had to change GET_IP, else gcc4 would complain about invalid lvalue cast

this patch makes yahoo zuma reach a screen where you get the option to buy the game
probably also fixes http://bugs.winehq.org/show_bug.cgi?id=7063 (civ3 demo)

the book Windows Nt/2000 Native API Reference seems to confirm the fixup also happens in windows.
But the pseudocode in the book places the fixup before sending the exception to the debugger
But the testcases in previous patches "prove" the debugger gets a unchanged context for the
first chance exception (unless there is a error in the testcase, which i can't find)

Thanks to Dmitry Timoshkov for finding the pseudo code in the book

This also exposes a (quite unlikely to hit)bug in winedbg which will be fixed in next patch

 dlls/ntdll/exception.c       |   16 ++++++++++------
 dlls/ntdll/tests/exception.c |   10 +---------
 2 files changed, 11 insertions(+), 15 deletions(-)
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 4d245a7af98ab45ac37407209aa9ba79ff8bf58c.diff
Type: text/x-patch
Size: 4141 bytes
Desc: not available
Url : http://www.winehq.org/pipermail/wine-patches/attachments/20070522/3d59484c/4d245a7af98ab45ac37407209aa9ba79ff8bf58c.bin

More information about the wine-patches mailing list