Skip to content

Commit

Permalink
Insert vkDeviceWaitIdle to prevent VK_DEVICE_LOST. (#3363)
Browse files Browse the repository at this point in the history
  • Loading branch information
mcourteaux authored Oct 8, 2024
1 parent 0a5fe70 commit fdb09ca
Showing 1 changed file with 6 additions and 0 deletions.
6 changes: 6 additions & 0 deletions src/renderer_vk.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -7100,6 +7100,12 @@ VK_DESTROY
const VkDevice device = s_renderVK->m_device;
const VkAllocationCallbacks* allocatorCb = s_renderVK->m_allocatorCb;

// Waiting for the device to be idle seems to get rid of VK_DEVICE_LOST
// upon resizing the window quickly. (See https://github.com/mpv-player/mpv/issues/8360
// and https://github.com/bkaradzic/bgfx/issues/3227).
result = vkDeviceWaitIdle(device);
BX_WARN(VK_SUCCESS == result, "Create swapchain error: vkDeviceWaitIdle() failed: %d: %s", result, getName(result));

VkSurfaceCapabilitiesKHR surfaceCapabilities;
result = vkGetPhysicalDeviceSurfaceCapabilitiesKHR(physicalDevice, m_surface, &surfaceCapabilities);

Expand Down

0 comments on commit fdb09ca

Please sign in to comment.