Cocoa Port: Fix a potential deadlock that may occur on emulation reset.
This commit is contained in:
parent
9ee7cd8ec0
commit
d1dcbb8218
|
@ -914,11 +914,12 @@ public:
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
if (_needRestoreRender3DLock)
|
if (_needRestoreRender3DLock && gpuEvent->GetRender3DNeedsFinish())
|
||||||
{
|
{
|
||||||
gpuEvent->Render3DLock();
|
gpuEvent->Render3DLock();
|
||||||
_needRestoreRender3DLock = NO;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
_needRestoreRender3DLock = NO;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -567,6 +567,8 @@ void gfx3d_reset()
|
||||||
if (CurrentRenderer->GetRenderNeedsFinish())
|
if (CurrentRenderer->GetRenderNeedsFinish())
|
||||||
{
|
{
|
||||||
GPU->ForceRender3DFinishAndFlush(false);
|
GPU->ForceRender3DFinishAndFlush(false);
|
||||||
|
CurrentRenderer->SetRenderNeedsFinish(false);
|
||||||
|
GPU->GetEventHandler()->DidRender3DEnd();
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifdef _SHOW_VTX_COUNTERS
|
#ifdef _SHOW_VTX_COUNTERS
|
||||||
|
|
Loading…
Reference in New Issue