vulkan: Gracefully handle back-to-back flip request spam
This commit is contained in:
@@ -2241,11 +2241,17 @@ void VKGSRender::flip(int buffer)
|
|||||||
m_current_frame->grab_resources(m_aux_frame_context);
|
m_current_frame->grab_resources(m_aux_frame_context);
|
||||||
}
|
}
|
||||||
else if (m_current_frame->swap_command_buffer)
|
else if (m_current_frame->swap_command_buffer)
|
||||||
|
{
|
||||||
|
if (m_draw_calls > 0)
|
||||||
{
|
{
|
||||||
//Unreachable
|
//Unreachable
|
||||||
fmt::throw_exception("Possible data corruption on frame context storage detected");
|
fmt::throw_exception("Possible data corruption on frame context storage detected");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//There were no draws and back-to-back flips happened
|
||||||
|
process_swap_request(m_current_frame, true);
|
||||||
|
}
|
||||||
|
|
||||||
if (!resize_screen)
|
if (!resize_screen)
|
||||||
{
|
{
|
||||||
u32 buffer_width = display_buffers[buffer].width;
|
u32 buffer_width = display_buffers[buffer].width;
|
||||||
|
|||||||
Reference in New Issue
Block a user