Module: wine Branch: master Commit: 4d53055f623a356df6c872b1f35fd92aaa50a914 URL: http://source.winehq.org/git/wine.git/?a=commit;h=4d53055f623a356df6c872b1f3...
Author: Alexandre Julliard julliard@winehq.org Date: Mon Dec 31 17:25:05 2007 +0100
winedos: Don't emulate in 32-bit mode interrupts that don't have a specific handler.
---
dlls/winedos/interrupts.c | 6 ++++-- 1 files changed, 4 insertions(+), 2 deletions(-)
diff --git a/dlls/winedos/interrupts.c b/dlls/winedos/interrupts.c index f254f5a..a7c791f 100644 --- a/dlls/winedos/interrupts.c +++ b/dlls/winedos/interrupts.c @@ -328,8 +328,10 @@ BOOL WINAPI DOSVM_EmulateInterruptPM( CONTEXT86 *context, BYTE intnum ) } else if (wine_ldt_is_system(context->SegCs)) { - INTPROC proc = DOSVM_GetBuiltinHandler( intnum ); - if (!proc) return FALSE; + INTPROC proc; + if (intnum >= sizeof(DOSVM_VectorsBuiltin)/sizeof(INTPROC)) return FALSE; + if (!(proc = DOSVM_VectorsBuiltin[intnum])) return FALSE; + proc( context ); } else {