SwapChainVk: Fix missed FIFO_RELAXED_KHR handling. Using wgpu::PresentMode::FifoRelaxed would crash because it was missing from a switch and a table. Bug: 42241264 Change-Id: I698112545f511f65c1e19977e8c7d29d031fd7f2 Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/189340 Reviewed-by: Austin Eng <enga@chromium.org> Commit-Queue: Corentin Wallez <cwallez@chromium.org>
diff --git a/src/dawn/native/vulkan/SwapChainVk.cpp b/src/dawn/native/vulkan/SwapChainVk.cpp index 3d1a186..4cc38c8 100644 --- a/src/dawn/native/vulkan/SwapChainVk.cpp +++ b/src/dawn/native/vulkan/SwapChainVk.cpp
@@ -68,6 +68,7 @@ uint32_t MinImageCountForPresentMode(VkPresentModeKHR mode) { switch (mode) { case VK_PRESENT_MODE_FIFO_KHR: + case VK_PRESENT_MODE_FIFO_RELAXED_KHR: case VK_PRESENT_MODE_IMMEDIATE_KHR: return 2; case VK_PRESENT_MODE_MAILBOX_KHR: @@ -264,9 +265,10 @@ }; VkPresentModeKHR targetMode = ToVulkanPresentMode(GetPresentMode()); - const std::array<VkPresentModeKHR, 3> kPresentModeFallbacks = { + const std::array<VkPresentModeKHR, 4> kPresentModeFallbacks = { VK_PRESENT_MODE_IMMEDIATE_KHR, VK_PRESENT_MODE_MAILBOX_KHR, + VK_PRESENT_MODE_FIFO_RELAXED_KHR, VK_PRESENT_MODE_FIFO_KHR, };