[winedbg] Don't ever pass a EH_STACK_INVALID exception
Glenn Wurster
gwurster at scs.carleton.ca
Mon Aug 22 14:21:53 CDT 2005
EH_STACK_INVALID exceptions can't be delivered to the application,
therefore the debugger should not pass on them, even if they are first
chance exceptions.
Changelog:
Don't pass on EH_STACK_INVALID exceptions.
Glenn.
? programs/winedbg/.nfs000387c800002fa6
Index: programs/winedbg/winedbg.c
===================================================================
RCS file: /home/wine/wine/programs/winedbg/winedbg.c,v
retrieving revision 1.37
diff -u -r1.37 winedbg.c
--- programs/winedbg/winedbg.c 7 Jul 2005 12:08:42 -0000 1.37
+++ programs/winedbg/winedbg.c 22 Aug 2005 19:10:26 -0000
@@ -38,7 +38,7 @@
* for that)
* + set a mode where winedbg would start (postmortem debugging) from a minidump
* - CPU adherence
- * + we always assume the stack grows has an i386 (ie downwards)
+ * + we always assume the stack grows as on i386 (ie downwards)
* - UI
* + enable back the limited output (depth of structure printing and number of
* lines)
@@ -609,7 +609,8 @@
return DBG_CONTINUE;
}
- if (first_chance && !is_debug && !DBG_IVAR(BreakOnFirstChance))
+ if (first_chance && !is_debug && !DBG_IVAR(BreakOnFirstChance) &&
+ !(rec->ExceptionFlags & EH_STACK_INVALID))
{
/* pass exception to program except for debug exceptions */
return DBG_EXCEPTION_NOT_HANDLED;
@@ -725,6 +726,9 @@
dbg_printf("0x%08lx", rec->ExceptionCode);
break;
}
+ }
+ if( (rec->ExceptionFlags & EH_STACK_INVALID) ) {
+ dbg_printf( ", invalid program stack" );
}
if (dbg_action_mode == automatic_mode)
More information about the wine-patches
mailing list