DRTVWR-510 cache vulkan-detect result

meow-7.2.2
Dave Houlton 2020-05-06 11:55:02 -06:00 committed by Andrey Lihatskiy
parent 0defa9be83
commit e1ea8eb773
1 changed files with 14 additions and 8 deletions

View File

@ -588,16 +588,22 @@ void send_stats()
// False-positives and false-negatives are possible, but unlikely. We'll get a good
// approximation of Vulkan capability within current user systems from this. More
// detailed information on versions and extensions can come later.
HMODULE vulkanDll = LoadLibraryExA("vulkan-1.dll", NULL, LOAD_LIBRARY_AS_DATAFILE);
if (NULL == vulkanDll)
static bool vulkan_oneshot = false;
static bool vulkan_detected = false;
if (!vulkan_oneshot)
{
misc["string_1"] = llformat("No Vulkan driver detected");
}
else
{
misc["string_1"] = llformat("Vulkan driver is detected");
FreeLibrary(vulkanDll);
HMODULE vulkan_loader = LoadLibraryExA("vulkan-1.dll", NULL, LOAD_LIBRARY_AS_DATAFILE);
if (NULL != vulkan_loader)
{
vulkan_detected = true;
FreeLibrary(vulkan_loader);
}
vulkan_oneshot = true;
}
misc["string_1"] = vulkan_detected ? llformat("Vulkan driver is detected") : llformat("No Vulkan driver detected");
#else
misc["string_1"] = llformat("Unused");
#endif // LL_WINDOWS