diff options
author | Rémi Verschelde <rverschelde@gmail.com> | 2019-11-06 15:30:21 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-02-11 12:05:31 +0100 |
commit | bb9b9b03c4915f21fe7c6e4339436aab6f0af7ea (patch) | |
tree | 767db65d09874a8b1ba84c7844f25c76d5a58eaa /thirdparty/vulkan/loader/extension_manual.c | |
parent | 7f430b03a70e70ba9f63c192beb2f31dd884f907 (diff) | |
parent | 7bf72ed14e4758bea20543e08d904200a5f2328f (diff) | |
download | redot-engine-bb9b9b03c4915f21fe7c6e4339436aab6f0af7ea.tar.gz |
Merge pull request #33385 from bruvzg/loader_1_1_127
Update Vulkan loader to 1.1.127
Diffstat (limited to 'thirdparty/vulkan/loader/extension_manual.c')
-rw-r--r-- | thirdparty/vulkan/loader/extension_manual.c | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/thirdparty/vulkan/loader/extension_manual.c b/thirdparty/vulkan/loader/extension_manual.c index 640db2f789..490496d7c7 100644 --- a/thirdparty/vulkan/loader/extension_manual.c +++ b/thirdparty/vulkan/loader/extension_manual.c @@ -58,6 +58,17 @@ VKAPI_ATTR VkResult VKAPI_CALL terminator_GetPhysicalDeviceSurfaceCapabilities2K uint8_t icd_index = phys_dev_term->icd_index; if (icd_term->dispatch.GetPhysicalDeviceSurfaceCapabilities2KHR != NULL) { + VkBaseOutStructure *pNext = (VkBaseOutStructure *)pSurfaceCapabilities->pNext; + while (pNext != NULL) { + if ((int)pNext->sType == VK_STRUCTURE_TYPE_SURFACE_PROTECTED_CAPABILITIES_KHR) { + // Not all ICDs may be supporting VK_KHR_surface_protected_capabilities + // Initialize VkSurfaceProtectedCapabilitiesKHR.supportsProtected to false and + // if an ICD supports protected surfaces, it will reset it to true accordingly. + ((VkSurfaceProtectedCapabilitiesKHR *)pNext)->supportsProtected = VK_FALSE; + } + pNext = (VkBaseOutStructure *)pNext->pNext; + } + // Pass the call to the driver, possibly unwrapping the ICD surface if (icd_surface->real_icd_surfaces != NULL && (void *)icd_surface->real_icd_surfaces[icd_index] != NULL) { VkPhysicalDeviceSurfaceInfo2KHR info_copy = *pSurfaceInfo; |