Qt: Fix possible crash when closing debugger

This commit is contained in:
Stenzek 2023-02-23 01:21:14 +10:00
parent ccf9ca3df8
commit 4494a2c73c
1 changed files with 6 additions and 6 deletions

View File

@ -390,10 +390,11 @@ void DebuggerWindow::onMemorySearchStringChanged(const QString&)
void DebuggerWindow::closeEvent(QCloseEvent* event)
{
QMainWindow::closeEvent(event);
g_emu_thread->disconnect(this);
g_emu_thread->setSystemPaused(true, true);
CPU::ClearBreakpoints();
Host::RunOnCPUThread(&CPU::ClearBreakpoints);
g_emu_thread->setSystemPaused(false);
QMainWindow::closeEvent(event);
emit closed();
}
@ -421,10 +422,9 @@ void DebuggerWindow::setupAdditionalUi()
void DebuggerWindow::connectSignals()
{
EmuThread* hi = g_emu_thread;
connect(hi, &EmuThread::systemPaused, this, &DebuggerWindow::onEmulationPaused);
connect(hi, &EmuThread::systemResumed, this, &DebuggerWindow::onEmulationResumed);
connect(hi, &EmuThread::debuggerMessageReported, this, &DebuggerWindow::onDebuggerMessageReported);
connect(g_emu_thread, &EmuThread::systemPaused, this, &DebuggerWindow::onEmulationPaused);
connect(g_emu_thread, &EmuThread::systemResumed, this, &DebuggerWindow::onEmulationResumed);
connect(g_emu_thread, &EmuThread::debuggerMessageReported, this, &DebuggerWindow::onDebuggerMessageReported);
connect(m_ui.actionPause, &QAction::toggled, this, &DebuggerWindow::onPauseActionToggled);
connect(m_ui.actionRunToCursor, &QAction::triggered, this, &DebuggerWindow::onRunToCursorTriggered);