mirror of
https://github.com/doitsujin/dxvk.git
synced 2025-03-14 04:29:15 +01:00
[dxvk] Work around vkWaitSemaphore incorrectly returning with VK_TIMEOUT
This commit is contained in:
parent
07a1045ffb
commit
17959640c3
@ -104,7 +104,13 @@ namespace dxvk {
|
||||
waitInfo.pSemaphores = &m_semaphore;
|
||||
waitInfo.pValues = &semaphoreValue;
|
||||
|
||||
VkResult vr = vk->vkWaitSemaphores(vk->device(), &waitInfo, ~0ull);
|
||||
// 32-bit winevulkan on Proton seems to be broken here
|
||||
// and returns with VK_TIMEOUT, even though the timeout
|
||||
// is infinite. Work around this by spinning.
|
||||
VkResult vr = VK_TIMEOUT;
|
||||
|
||||
while (vr == VK_TIMEOUT)
|
||||
vr = vk->vkWaitSemaphores(vk->device(), &waitInfo, ~0ull);
|
||||
|
||||
if (vr)
|
||||
Logger::err(str::format("Failed to synchronize with global timeline semaphore: ", vr));
|
||||
|
Loading…
x
Reference in New Issue
Block a user