On Tue, Mar 27, 2018 at 3:40 PM, Józef Kucia joseph.kucia@gmail.com wrote:
On Tue, Mar 27, 2018 at 9:00 AM, Roderick Colenbrander thunderbird2k@gmail.com wrote:
Signed-off-by: Roderick Colenbrander thunderbird2k@gmail.com
dlls/vulkan-1/vulkan.c | 36 +++++++++++++++++++++++++++++++++--- 1 file changed, 33 insertions(+), 3 deletions(-)
diff --git a/dlls/vulkan-1/vulkan.c b/dlls/vulkan-1/vulkan.c index b8db08a312..e3981b63ef 100644 --- a/dlls/vulkan-1/vulkan.c +++ b/dlls/vulkan-1/vulkan.c @@ -27,6 +27,32 @@
WINE_DEFAULT_DEBUG_CHANNEL(vulkan);
+static VkResult (WINAPI *p_vkEnumerateInstanceExtensionProperties)(const char *, uint32_t *, VkExtensionProperties *); +static void * (WINAPI *p_vk_icdGetInstanceProcAddr)(VkInstance, const char *);
+static BOOL vk_loader_init(void) +{
- HMODULE icd_handle = NULL;
- icd_handle = LoadLibraryA("winevulkan.dll");
- if (!icd_handle)
- {
ERR("Failed to load Vulkan ICD (winevulkan.dll).\n");
return FALSE;
- }
- p_vk_icdGetInstanceProcAddr = (void *)GetProcAddress(icd_handle, "vk_icdGetInstanceProcAddr");
- if (!p_vk_icdGetInstanceProcAddr)
return FALSE;
Is there a reason to load winevulkan.dll dynamically? We could simplify code by linking to winevulkan.dll. Otherwise, we should probably take care of unloading winevulkan.dll, e.g. in case of failures.
Linking should be fine I think, easy to change.