From 77f4a8e2b8066d3bc376eab1ce443e57bc04d4ee Mon Sep 17 00:00:00 2001 From: Petar Popovic Date: Sun, 1 Mar 2026 18:44:39 +0100 Subject: [PATCH] Fix potential memory leak in VULKAN_AcquireCommandBuffer() on error --- src/gpu/vulkan/SDL_gpu_vulkan.c | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/src/gpu/vulkan/SDL_gpu_vulkan.c b/src/gpu/vulkan/SDL_gpu_vulkan.c index 841cafef0e..e196954758 100644 --- a/src/gpu/vulkan/SDL_gpu_vulkan.c +++ b/src/gpu/vulkan/SDL_gpu_vulkan.c @@ -9548,15 +9548,16 @@ static SDL_GPUCommandBuffer *VULKAN_AcquireCommandBuffer( VulkanCommandBuffer *commandBuffer = VULKAN_INTERNAL_GetInactiveCommandBufferFromPool(renderer, threadID); + if (commandBuffer == NULL) { + SDL_UnlockMutex(renderer->acquireCommandBufferLock); + return NULL; + } + DescriptorSetCache *descriptorSetCache = VULKAN_INTERNAL_AcquireDescriptorSetCache(renderer); SDL_UnlockMutex(renderer->acquireCommandBufferLock); - if (commandBuffer == NULL) { - return NULL; - } - commandBuffer->descriptorSetCache = descriptorSetCache; // Reset state