From 3491895960e0d480e686a5a3489f7614bb51cd90 Mon Sep 17 00:00:00 2001 From: Hunter Kvalevog <91440203+hkva@users.noreply.github.com> Date: Sat, 7 Jan 2023 07:45:35 -0600 Subject: [PATCH] [dxvk] Remove SDL dummy window SDL >= 2.0.9 permits passing a nullptr window to SDL_Vulkan_GetInstanceExtensions, so there's no point in going though the work of creating a window just to call this function. --- src/dxvk/platform/dxvk_sdl2_exts.cpp | 16 ++-------------- 1 file changed, 2 insertions(+), 14 deletions(-) diff --git a/src/dxvk/platform/dxvk_sdl2_exts.cpp b/src/dxvk/platform/dxvk_sdl2_exts.cpp index 65a3f4993..701a3992b 100644 --- a/src/dxvk/platform/dxvk_sdl2_exts.cpp +++ b/src/dxvk/platform/dxvk_sdl2_exts.cpp @@ -13,30 +13,18 @@ namespace dxvk { DxvkNameSet DxvkPlatformExts::getInstanceExtensions() { - SDL_Window* window = SDL_CreateWindow( - "Dummy Window", - SDL_WINDOWPOS_UNDEFINED, - SDL_WINDOWPOS_UNDEFINED, - 1, 1, - SDL_WINDOW_HIDDEN | SDL_WINDOW_VULKAN); - - if (window == nullptr) - throw DxvkError(str::format("SDL2 WSI: Failed to create dummy window. ", SDL_GetError())); - uint32_t extensionCount = 0; - if (!SDL_Vulkan_GetInstanceExtensions(window, &extensionCount, nullptr)) + if (!SDL_Vulkan_GetInstanceExtensions(nullptr, &extensionCount, nullptr)) throw DxvkError(str::format("SDL2 WSI: Failed to get instance extension count. ", SDL_GetError())); auto extensionNames = std::vector(extensionCount); - if (!SDL_Vulkan_GetInstanceExtensions(window, &extensionCount, extensionNames.data())) + if (!SDL_Vulkan_GetInstanceExtensions(nullptr, &extensionCount, extensionNames.data())) throw DxvkError(str::format("SDL2 WSI: Failed to get instance extensions. ", SDL_GetError())); DxvkNameSet names; for (const char* name : extensionNames) names.add(name); - SDL_DestroyWindow(window); - return names; }