osx: lockup when emulator aborts. Race condition when starting emu

This commit is contained in:
Flyinghead 2021-08-05 17:43:26 +02:00
parent 0414406471
commit 37eace9db4
3 changed files with 8 additions and 4 deletions

View File

@ -380,11 +380,11 @@ void rend_start_render()
if (QueueRender(ctx))
{
palette_update();
pend_rend = true;
if (!config::ThreadedRendering)
rend_single_frame(true);
else
rs.Set();
pend_rend = true;
}
}
}

View File

@ -51,8 +51,12 @@ bool mainui_rend_frame()
UpdateInputState();
if (!dc_is_running())
{
dc_stop();
gui_stop_game(dc_get_last_error());
std::string error = dc_get_last_error();
if (!error.empty())
{
dc_stop();
gui_stop_game(error);
}
}
return false;
}

View File

@ -118,7 +118,7 @@ extern bool rend_framePending();
bool emu_frame_pending()
{
return rend_framePending() || gui_is_open();
return rend_framePending() || !dc_is_running() || gui_is_open();
}
bool emu_renderer_enabled()