Zhiyi Zhang (@zhiyi) commented about dlls/winex11.drv/x11drv_main.c:
WARN( "Failed to open the Vulkan driver\n" );
return;
- }
- if ((vr = vulkan_funcs->p_vkCreateInstance( &create_info, NULL, &d3dkmt_vk_instance )))
- {
WARN( "Failed to create a Vulkan instance, vr %d.\n", vr );
vulkan_funcs = NULL;
return;
- }
+#define LOAD_VK_FUNC( f ) \
- if (!(p##f = (void *)vulkan_funcs->p_vkGetInstanceProcAddr( d3dkmt_vk_instance, #f ))) \
- { \
WARN( "Failed to load " #f ".\n" ); \
vulkan_funcs = NULL; \
Although it is unlikely to happen, you should destroy d3dkmt_vk_instance when loading instance functions fails.