mirror of
https://github.com/Ed94/raddebugger.git
synced 2026-08-01 19:48:11 +00:00
eliminate weird rollback/re-adjust rules for threads hitting int3s - rollback should only ever happen for temporary traps, e.g. user breakpoints or stepping. the fact that the thread shows *after* the trap later is a visualization issue, not a functionality issue
This commit is contained in:
@@ -2280,6 +2280,10 @@ debug_string_tests(void)
|
||||
static void
|
||||
interrupt_stepping_tests(void)
|
||||
{
|
||||
__debugbreak();
|
||||
__debugbreak();
|
||||
__debugbreak();
|
||||
__debugbreak();
|
||||
for(int i = 0; i < 1000; i += 1)
|
||||
{
|
||||
if(i == 999)
|
||||
@@ -2297,6 +2301,19 @@ interrupt_stepping_tests(void)
|
||||
int x = 0;
|
||||
}
|
||||
|
||||
////////////////////////////////
|
||||
//~ rjf: JIT Stepping Tests
|
||||
|
||||
static void
|
||||
jit_stepping_tests(void)
|
||||
{
|
||||
OutputDebugString("A\n");
|
||||
VOID *code = VirtualAlloc(0, 0x1000, MEM_COMMIT|MEM_RESERVE, PAGE_EXECUTE_READWRITE);
|
||||
*((uint32_t*)code) = 0xC39090CC;
|
||||
((void (__fastcall *)()) code)();
|
||||
OutputDebugString("B\n");
|
||||
}
|
||||
|
||||
////////////////////////////////
|
||||
// NOTE(allen): Exception Stepping
|
||||
|
||||
@@ -2592,6 +2609,8 @@ mule_main(int argc, char** argv){
|
||||
|
||||
debug_string_tests();
|
||||
|
||||
jit_stepping_tests();
|
||||
|
||||
interrupt_stepping_tests();
|
||||
|
||||
exception_stepping_tests();
|
||||
|
||||
Reference in New Issue
Block a user