Qt: Fix crash when loading a game after stopping GDB server

This commit is contained in:
Jeffrey Pfau 2015-02-28 15:28:34 -08:00
parent 9b8b56d701
commit a7985c39ac
3 changed files with 7 additions and 2 deletions

View File

@ -46,6 +46,7 @@ Bugfixes:
- Qt: Fix crash when starting GDB stub after closing a game
- Qt: Fix patch loading while a game is running
- Util: Fix sockets on Windows
- Qt: Fix crash when loading a game after stopping GDB server
Misc:
- GBA Audio: Change internal audio sample buffer from 32-bit to 16-bit samples
- GBA Memory: Simplify memory API and use fixed bus width

View File

@ -43,14 +43,16 @@ void GDBController::attach() {
if (m_gameController->isLoaded()) {
ARMDebuggerEnter(&m_gdbStub.d, DEBUGGER_ENTER_ATTACHED, 0);
} else {
connect(m_gameController, &GameController::gameStarted, [this] () {
disconnect(m_gameController);
QObject::disconnect(m_autoattach);
m_autoattach = connect(m_gameController, &GameController::gameStarted, [this] () {
QObject::disconnect(m_autoattach);
ARMDebuggerEnter(&m_gdbStub.d, DEBUGGER_ENTER_ATTACHED, 0);
});
}
}
void GDBController::detach() {
QObject::disconnect(m_autoattach);
if (!isAttached()) {
return;
}

View File

@ -45,6 +45,8 @@ private:
ushort m_port;
Address m_bindAddress;
QMetaObject::Connection m_autoattach;
};
}