Merge pull request #1042 from YuanTianNXP/master

Fix an error in benchmark mode using wayland
This commit is contained in:
Sascha Willems 2023-06-15 21:14:59 +02:00 committed by GitHub
commit 0c404c1773
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -299,6 +299,16 @@ void VulkanExampleBase::renderLoop()
// - for macOS, handle benchmarking within NSApp rendering loop via displayLinkOutputCb() // - for macOS, handle benchmarking within NSApp rendering loop via displayLinkOutputCb()
#if !(defined(VK_USE_PLATFORM_IOS_MVK) || defined(VK_USE_PLATFORM_MACOS_MVK)) #if !(defined(VK_USE_PLATFORM_IOS_MVK) || defined(VK_USE_PLATFORM_MACOS_MVK))
if (benchmark.active) { if (benchmark.active) {
#if defined(VK_USE_PLATFORM_WAYLAND_KHR)
while (!configured)
wl_display_dispatch(display);
while (wl_display_prepare_read(display) != 0)
wl_display_dispatch_pending(display);
wl_display_flush(display);
wl_display_read_events(display);
wl_display_dispatch_pending(display);
#endif
benchmark.run([=] { render(); }, vulkanDevice->properties); benchmark.run([=] { render(); }, vulkanDevice->properties);
vkDeviceWaitIdle(device); vkDeviceWaitIdle(device);
if (benchmark.filename != "") { if (benchmark.filename != "") {