lock framebuffer stuff to prevent conflicts when reiniting the core or changing the renderer

This commit is contained in:
Arisotura
2024-10-31 22:51:18 +01:00
parent 9c8f229fed
commit e3e561da3f
4 changed files with 8 additions and 0 deletions

View File

@ -779,6 +779,7 @@ void ScreenPanelNative::paintEvent(QPaintEvent* event)
if (emuThread->emuIsActive())
{
emuInstance->renderLock.lock();
auto nds = emuInstance->getNDS();
assert(nds != nullptr);
@ -801,6 +802,7 @@ void ScreenPanelNative::paintEvent(QPaintEvent* event)
painter.setTransform(screenTrans[i]);
painter.drawImage(screenrc, screen[screenKind[i]]);
}
emuInstance->renderLock.unlock();
}
osdUpdate();