From dd8e9517ef03695b4dcfaf063b5d7558c845bd8d Mon Sep 17 00:00:00 2001 From: Jason Ekstrand Date: Wed, 21 Feb 2018 12:38:12 -0800 Subject: vulkan/wsi/x11: Set OUT_OF_DATE if wait_for_special_event fails This most likely means we lost our connection to the X server so OUT_OF_DATE is reasonable. This was also the one case where we pushed a UINT32_MAX into the queue without setting an error condition. Cc: mesa-stable@lists.freedesktop.org Reviewed-by: Daniel Stone (cherry picked from commit 6937c613242d646b8c37f01ffd6a02a9b64c8d6c) --- src/vulkan/wsi/wsi_common_x11.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/vulkan/wsi/wsi_common_x11.c b/src/vulkan/wsi/wsi_common_x11.c index c29e0a2d30d..e5d7e4d1742 100644 --- a/src/vulkan/wsi/wsi_common_x11.c +++ b/src/vulkan/wsi/wsi_common_x11.c @@ -899,8 +899,10 @@ x11_manage_fifo_queues(void *state) while (chain->last_present_msc < target_msc) { xcb_generic_event_t *event = xcb_wait_for_special_event(chain->conn, chain->special_event); - if (!event) + if (!event) { + result = VK_ERROR_OUT_OF_DATE_KHR; goto fail; + } result = x11_handle_dri3_present_event(chain, (void *)event); free(event); -- cgit v1.2.3