mirror of https://github.com/mgba-emu/mgba.git
Qt: Fix race condition when a game crashes immediately
This commit is contained in:
parent
811ad23e61
commit
98a6510b92
1
CHANGES
1
CHANGES
|
@ -39,6 +39,7 @@ Bugfixes:
|
|||
- GBA Video: Fix sprite boundary conditions with mosaic
|
||||
- Video: Fix FFmpeg crashing when the file extension is wrong
|
||||
- GBA Audio: Fix GB audio channels being too quiet (fixes #159)
|
||||
- Qt: Fix a race condition when a game crashes immediately
|
||||
Misc:
|
||||
- Qt: Disable sync to video by default
|
||||
- GBA: Exit cleanly on FATAL if the port supports it
|
||||
|
|
|
@ -332,13 +332,20 @@ void Window::toggleFullScreen() {
|
|||
}
|
||||
|
||||
void Window::gameStarted(GBAThread* context) {
|
||||
emit startDrawing(m_controller->drawContext(), context);
|
||||
char title[13] = { '\0' };
|
||||
MutexLock(&context->stateMutex);
|
||||
if (context->state < THREAD_EXITING) {
|
||||
emit startDrawing(m_controller->drawContext(), context);
|
||||
GBAGetGameTitle(context->gba, title);
|
||||
} else {
|
||||
MutexUnlock(&context->stateMutex);
|
||||
return;
|
||||
}
|
||||
MutexUnlock(&context->stateMutex);
|
||||
foreach (QAction* action, m_gameActions) {
|
||||
action->setDisabled(false);
|
||||
}
|
||||
appendMRU(context->fname);
|
||||
char title[13] = { '\0' };
|
||||
GBAGetGameTitle(context->gba, title);
|
||||
setWindowTitle(tr(PROJECT_NAME " - %1").arg(title));
|
||||
attachWidget(m_display);
|
||||
m_screenWidget->setScaledContents(true);
|
||||
|
|
Loading…
Reference in New Issue