[PATCH 1/8] dxgi: Avoid recreating swapchain when we don't have user images.

Józef Kucia jkucia at codeweavers.com
Wed Mar 6 07:19:50 CST 2019


Signed-off-by: Józef Kucia <jkucia at codeweavers.com>
---
 dlls/dxgi/swapchain.c | 7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/dlls/dxgi/swapchain.c b/dlls/dxgi/swapchain.c
index 991a505ef6fa..cf084f7183c2 100644
--- a/dlls/dxgi/swapchain.c
+++ b/dlls/dxgi/swapchain.c
@@ -2138,7 +2138,14 @@ static HRESULT STDMETHODCALLTYPE d3d12_swapchain_Present1(IDXGISwapChain3 *iface
     vr = d3d12_swapchain_acquire_next_image(swapchain);
     if (vr == VK_ERROR_OUT_OF_DATE_KHR)
     {
+        if (!d3d12_swapchain_have_user_images(swapchain))
+        {
+            FIXME("Cannot recreate swapchain without user images.\n");
+            return DXGI_STATUS_MODE_CHANGED;
+        }
+
         TRACE("Recreating Vulkan swapchain.\n");
+
         d3d12_swapchain_destroy_buffers(swapchain, FALSE);
         return d3d12_swapchain_recreate_vulkan_swapchain(swapchain);
     }
-- 
2.19.2




More information about the wine-devel mailing list