From edf5f9ec5ca15bf9a6baac9b0ecd61590cfa18ca Mon Sep 17 00:00:00 2001 From: Sam Lantinga Date: Wed, 8 Oct 2025 19:16:50 -0700 Subject: [PATCH] Properly upgrade a window to Vulkan when creating a Vulkan renderer --- src/render/vulkan/SDL_render_vulkan.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/src/render/vulkan/SDL_render_vulkan.c b/src/render/vulkan/SDL_render_vulkan.c index 196ea443d2..a06598ea0c 100644 --- a/src/render/vulkan/SDL_render_vulkan.c +++ b/src/render/vulkan/SDL_render_vulkan.c @@ -1726,7 +1726,6 @@ static VkResult VULKAN_CreateDeviceResources(SDL_Renderer *renderer, SDL_Propert VK_KHR_GET_MEMORY_REQUIREMENTS_2_EXTENSION_NAME, }; VULKAN_RenderData *rendererData = (VULKAN_RenderData *)renderer->internal; - SDL_VideoDevice *device = SDL_GetVideoDevice(); VkResult result = VK_SUCCESS; PFN_vkGetInstanceProcAddr vkGetInstanceProcAddr = NULL; bool createDebug = SDL_GetHintBoolean(SDL_HINT_RENDER_VULKAN_DEBUG, false); @@ -1736,7 +1735,7 @@ static VkResult VULKAN_CreateDeviceResources(SDL_Renderer *renderer, SDL_Propert SDL_LogDebug(SDL_LOG_CATEGORY_RENDER, "SDL_Vulkan_LoadLibrary failed" ); return VK_ERROR_UNKNOWN; } - vkGetInstanceProcAddr = device ? (PFN_vkGetInstanceProcAddr)device->vulkan_config.vkGetInstanceProcAddr : NULL; + vkGetInstanceProcAddr = (PFN_vkGetInstanceProcAddr)SDL_Vulkan_GetVkGetInstanceProcAddr(); if(!vkGetInstanceProcAddr) { SDL_LogDebug(SDL_LOG_CATEGORY_RENDER, "vkGetInstanceProcAddr is NULL" ); return VK_ERROR_UNKNOWN; @@ -1811,7 +1810,7 @@ static VkResult VULKAN_CreateDeviceResources(SDL_Renderer *renderer, SDL_Propert if (rendererData->surface) { rendererData->surface_external = true; } else { - if (!device->Vulkan_CreateSurface || !device->Vulkan_CreateSurface(device, renderer->window, rendererData->instance, NULL, &rendererData->surface)) { + if (!SDL_Vulkan_CreateSurface(renderer->window, rendererData->instance, NULL, &rendererData->surface)) { VULKAN_DestroyAll(renderer); SET_ERROR_MESSAGE("Vulkan_CreateSurface() failed"); return VK_ERROR_UNKNOWN;