wsi/common: Do not update present mode with MESA_VK_WSI_PRESENT_MODE.

Signed-off-by: Hans-Kristian Arntzen <post@arntzen-software.no>
Reviewed-by: Sebastian Wick <sebastian.wick@redhat.com>
Fixes: ad71d584cf ("wsi/common: Add function to modify present mode.")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/30434>
This commit is contained in:
Hans-Kristian Arntzen 2024-07-31 10:07:03 +02:00 committed by Marge Bot
parent fafa0d5abb
commit 369e3cc20a

View file

@ -1354,9 +1354,14 @@ wsi_common_queue_present(const struct wsi_device *wsi,
uint32_t image_index = pPresentInfo->pImageIndices[i];
VkResult result;
/* Update the present mode for this present and any subsequent present. */
if (present_mode_info && present_mode_info->pPresentModes && swapchain->set_present_mode)
/* Update the present mode for this present and any subsequent present.
* Only update the present mode when MESA_VK_WSI_PRESENT_MODE is not used.
* We should also turn any VkSwapchainPresentModesCreateInfoEXT into a nop,
* but none of the WSI backends use that currently. */
if (present_mode_info && present_mode_info->pPresentModes &&
swapchain->set_present_mode && wsi->override_present_mode == VK_PRESENT_MODE_MAX_ENUM_KHR) {
swapchain->set_present_mode(swapchain, present_mode_info->pPresentModes[i]);
}
if (swapchain->fences[image_index] == VK_NULL_HANDLE) {
const VkFenceCreateInfo fence_info = {