Merge pull request #32 from colinsenner/fix-skip-int3

fixes an issue where you cannot step over int3 instructions even with…
This commit is contained in:
Duncan Ogilvie 2026-07-16 13:24:15 +02:00 committed by GitHub
commit 7acc78afd1
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
1 changed files with 4 additions and 1 deletions

View File

@ -662,7 +662,10 @@ __declspec(dllexport) void TITCALL DebugLoop()
{
ULONG_PTR exceptionAddress = (ULONG_PTR)DBGEvent.u.Exception.ExceptionRecord.ExceptionAddress;
if(recentlyDeletedBpx.find(exceptionAddress) != recentlyDeletedBpx.end())
unsigned char currentByte = 0xCC;
MemoryReadSafe(dbgProcessInformation.hProcess, (void*)exceptionAddress, &currentByte, 1, nullptr);
if(currentByte != 0xCC && recentlyDeletedBpx.find(exceptionAddress) != recentlyDeletedBpx.end())
{
//breakpoint was recently deleted - handle the stale event gracefully
hActiveThread = EngineOpenThread(THREAD_GETSETSUSPEND, false, DBGEvent.dwThreadId);