Alexandre Julliard : kernel32: Forward interrupts in 32-bit code to winedos too.
Alexandre Julliard
julliard at winehq.org
Thu Dec 20 06:21:55 CST 2007
Module: wine
Branch: master
Commit: e2a366ce338d5b6b0f3c8962d70134f8d4e87f3b
URL: http://source.winehq.org/git/wine.git/?a=commit;h=e2a366ce338d5b6b0f3c8962d70134f8d4e87f3b
Author: Alexandre Julliard <julliard at winehq.org>
Date: Thu Dec 20 12:18:19 2007 +0100
kernel32: Forward interrupts in 32-bit code to winedos too.
---
dlls/kernel32/instr.c | 1 -
dlls/winedos/interrupts.c | 4 ++++
2 files changed, 4 insertions(+), 1 deletions(-)
diff --git a/dlls/kernel32/instr.c b/dlls/kernel32/instr.c
index f9b99c8..97a1d14 100644
--- a/dlls/kernel32/instr.c
+++ b/dlls/kernel32/instr.c
@@ -769,7 +769,6 @@ DWORD __wine_emulate_instruction( EXCEPTION_RECORD *rec, CONTEXT86 *context )
break; /* Unable to emulate it */
case 0xcd: /* int <XX> */
- if (wine_ldt_is_system(context->SegCs)) break; /* don't emulate it in 32-bit code */
if (!winedos.EmulateInterruptPM) load_winedos();
if (winedos.EmulateInterruptPM)
{
diff --git a/dlls/winedos/interrupts.c b/dlls/winedos/interrupts.c
index 37d7a4b..b482ab0 100644
--- a/dlls/winedos/interrupts.c
+++ b/dlls/winedos/interrupts.c
@@ -324,6 +324,10 @@ void WINAPI DOSVM_EmulateInterruptPM( CONTEXT86 *context, BYTE intnum )
DOSVM_IntProcRelay,
DOSVM_GetBuiltinHandler(intnum) );
}
+ else if (wine_ldt_is_system(context->SegCs))
+ {
+ DOSVM_CallBuiltinHandler( context, intnum );
+ }
else
{
DOSVM_HardwareInterruptPM( context, intnum );
More information about the wine-cvs
mailing list