Wine VM86 exception handling bug?
2 Jun
2006
2 Jun
'06
2:14 p.m.
Hi all! I think i found a bug in VM86 exception handling (must be regression, i guess). Short Wine function flow: On privileged instruction __wine_enter_vm86 saves vm86 registers in CONTEXT and starts raise_segv_exception. raise_segv_exception routes exception to the INSTR_EmulateInstruction and then to winedos I/O emulator, then tries to use NtSetContextThread(GetCurrentThread(), CONTEXT). NtSetContextThread obviously fails because of VM86 segment values in CONTEXT. My opinion is that NtSetContextThread call is wrong; __wine_enter_vm86 would restore vm86 registers correctly. I think i know what is the problem; however, I lack experience to fix it myself :) I need help; any hints would be appreciated.
7136
Age (days ago)
7136
Last active (days ago)
0 comments
1 participants
participants (1)
-
Andrey Turkin