Merge pull request #5185 from MerryMage/fix-gdbstub

gdbstub: Fix some gdbstub jankiness
This commit is contained in:
Hamish Milne 2020-04-16 23:52:00 +01:00 committed by GitHub
commit 9afd58cec2
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 7 additions and 4 deletions

View file

@ -50,6 +50,10 @@ System::ResultStatus System::RunLoop(bool tight_loop) {
} }
if (GDBStub::IsServerEnabled()) { if (GDBStub::IsServerEnabled()) {
Kernel::Thread* thread = kernel->GetCurrentThreadManager().GetCurrentThread();
if (thread && running_core) {
running_core->SaveContext(thread->context);
}
GDBStub::HandlePacket(); GDBStub::HandlePacket();
// If the loop is halted and we want to step, use a tiny (1) number of instructions to // If the loop is halted and we want to step, use a tiny (1) number of instructions to

View file

@ -1264,10 +1264,9 @@ void SendTrap(Kernel::Thread* thread, int trap) {
return; return;
} }
if (!halt_loop || current_thread == thread) {
current_thread = thread; current_thread = thread;
SendSignal(thread, trap); SendSignal(thread, trap);
}
halt_loop = true; halt_loop = true;
send_trap = false; send_trap = false;
} }