From 6b2d09f355595b3744cbaf2b8904c4d0f20f5c52 Mon Sep 17 00:00:00 2001 From: Alexis DUBURCQ Date: Tue, 19 Aug 2025 13:12:12 +0200 Subject: [PATCH] Make refetching dynamically loaded Vulkan API optional. --- src/render/vk/backend.cpp | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/src/render/vk/backend.cpp b/src/render/vk/backend.cpp index 2a486de3..3f65a400 100644 --- a/src/render/vk/backend.cpp +++ b/src/render/vk/backend.cpp @@ -131,10 +131,11 @@ LoaderLib * LoaderLib::load() FATAL("Couldn't find vkGetInstanceProcAddr"); } - get_inst_addr = (PFN_vkGetInstanceProcAddr)get_inst_addr( + auto get_inst_addr_refetched = (PFN_vkGetInstanceProcAddr)get_inst_addr( VK_NULL_HANDLE, "vkGetInstanceProcAddr"); - if (get_inst_addr == VK_NULL_HANDLE) { - FATAL("Refetching vkGetInstanceProcAddr after dlsym failed"); + if (get_inst_addr_refetched != VK_NULL_HANDLE) { + // Refetching should not be necessary and may even fail on some systems + get_inst_addr = get_inst_addr_refetched; } entry_fn = (void (*)())get_inst_addr;