summaryrefslogtreecommitdiffstats
path: root/src/vulkan
diff options
context:
space:
mode:
authorDaniel Stone <[email protected]>2016-01-19 16:51:56 +0000
committerDaniel Stone <[email protected]>2016-01-19 16:54:55 +0000
commitba5ef49dcbf9e001231658ad8c6588649a2dbd57 (patch)
treeed4bcf4157d101ee4d7f4c758eb0d5d5ce3a176d /src/vulkan
parent3276610ea6a3c36176fcf0089a47093d12f9f982 (diff)
anv/wsi: Avoid stuck Wayland connection
In acquire_next_image, we are waiting for a wl_buffer::release to arrive and release one of the buffers in our swapchain. Most compositors don't explicitly flush release events, so we may need to perform a roundtrip instead, to ensure the event arrives. Signed-off-by: Daniel Stone <[email protected]>
Diffstat (limited to 'src/vulkan')
-rw-r--r--src/vulkan/anv_wsi_wayland.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/vulkan/anv_wsi_wayland.c b/src/vulkan/anv_wsi_wayland.c
index 5e8a3a56f68..c8f9cf27ab3 100644
--- a/src/vulkan/anv_wsi_wayland.c
+++ b/src/vulkan/anv_wsi_wayland.c
@@ -536,8 +536,8 @@ wsi_wl_swapchain_acquire_next_image(struct anv_swapchain *anv_chain,
/* This time we do a blocking dispatch because we can't go
* anywhere until we get an event.
*/
- int ret = wl_display_dispatch_queue(chain->display->display,
- chain->queue);
+ int ret = wl_display_roundtrip_queue(chain->display->display,
+ chain->queue);
if (ret < 0)
return vk_error(VK_ERROR_OUT_OF_DATE_KHR);
}