mirror of
git://source.winehq.org/git/wine.git
synced 2024-10-06 08:50:49 +00:00
winevulkan: Move __wine_get_vulkan_driver call to Unix lib.
This commit is contained in:
parent
35413f9217
commit
1de20f86ea
|
@ -2,7 +2,7 @@ MODULE = winevulkan.dll
|
|||
UNIXLIB = winevulkan.so
|
||||
IMPORTLIB = winevulkan
|
||||
IMPORTS = user32 gdi32 advapi32 setupapi win32u
|
||||
UNIX_LIBS = $(PTHREAD_LIBS)
|
||||
UNIX_LIBS = -lwin32u $(PTHREAD_LIBS)
|
||||
|
||||
C_SRCS = \
|
||||
loader.c \
|
||||
|
|
|
@ -215,24 +215,11 @@ VkResult WINAPI vk_icdNegotiateLoaderICDInterfaceVersion(uint32_t *supported_ver
|
|||
|
||||
static BOOL WINAPI wine_vk_init(INIT_ONCE *once, void *param, void **context)
|
||||
{
|
||||
const void *driver;
|
||||
|
||||
driver = __wine_get_vulkan_driver(WINE_VULKAN_DRIVER_VERSION);
|
||||
if (!driver)
|
||||
{
|
||||
ERR("Failed to load Wine graphics driver supporting Vulkan.\n");
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
if (NtQueryVirtualMemory(GetCurrentProcess(), hinstance, MemoryWineUnixFuncs,
|
||||
&unix_handle, sizeof(unix_handle), NULL))
|
||||
return FALSE;
|
||||
|
||||
if (vk_unix_call(unix_init, &driver) || !driver)
|
||||
return FALSE;
|
||||
|
||||
unix_funcs = driver;
|
||||
return TRUE;
|
||||
return !vk_unix_call(unix_init, &unix_funcs);
|
||||
}
|
||||
|
||||
static BOOL wine_vk_init_once(void)
|
||||
|
|
|
@ -436,7 +436,14 @@ static void wine_vk_device_free(struct VkDevice_T *device)
|
|||
|
||||
NTSTATUS init_vulkan(void *args)
|
||||
{
|
||||
vk_funcs = *(const struct vulkan_funcs **)args;
|
||||
vk_funcs = __wine_get_vulkan_driver(WINE_VULKAN_DRIVER_VERSION);
|
||||
if (!vk_funcs)
|
||||
{
|
||||
ERR("Failed to load Wine graphics driver supporting Vulkan.\n");
|
||||
return STATUS_UNSUCCESSFUL;
|
||||
}
|
||||
|
||||
|
||||
*(const struct unix_funcs **)args = &loader_funcs;
|
||||
return STATUS_SUCCESS;
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue