Ignore VK_SUBOPTIMAL_KHR on the Android platform
This is returned whenever the device has been rotated, and can be safely ignored. Fixes https://github.com/libsdl-org/SDL/issues/12950
This commit is contained in:
@@ -10682,7 +10682,13 @@ static bool VULKAN_Submit(
|
|||||||
presentData->windowData->inFlightFences[presentData->windowData->frameCounter] = (SDL_GPUFence *)vulkanCommandBuffer->inFlightFence;
|
presentData->windowData->inFlightFences[presentData->windowData->frameCounter] = (SDL_GPUFence *)vulkanCommandBuffer->inFlightFence;
|
||||||
(void)SDL_AtomicIncRef(&vulkanCommandBuffer->inFlightFence->referenceCount);
|
(void)SDL_AtomicIncRef(&vulkanCommandBuffer->inFlightFence->referenceCount);
|
||||||
|
|
||||||
if (presentResult == VK_SUBOPTIMAL_KHR || presentResult == VK_ERROR_OUT_OF_DATE_KHR) {
|
// On the Android platform, VK_SUBOPTIMAL_KHR is returned whenever the device is rotated. We'll just ignore this for now.
|
||||||
|
#ifndef SDL_PLATFORM_ANDROID
|
||||||
|
if (presentResult == VK_SUBOPTIMAL_KHR) {
|
||||||
|
presentData->windowData->needsSwapchainRecreate = true;
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
if (presentResult == VK_ERROR_OUT_OF_DATE_KHR) {
|
||||||
presentData->windowData->needsSwapchainRecreate = true;
|
presentData->windowData->needsSwapchainRecreate = true;
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
|
|||||||
Reference in New Issue
Block a user