mirror of
https://github.com/libsdl-org/SDL.git
synced 2026-03-23 18:53:08 +08:00
Fix potential memory leak in VULKAN_AcquireCommandBuffer() on error
This commit is contained in:
committed by
Sam Lantinga
parent
fb1d1ab306
commit
77f4a8e2b8
@@ -9548,15 +9548,16 @@ static SDL_GPUCommandBuffer *VULKAN_AcquireCommandBuffer(
|
|||||||
VulkanCommandBuffer *commandBuffer =
|
VulkanCommandBuffer *commandBuffer =
|
||||||
VULKAN_INTERNAL_GetInactiveCommandBufferFromPool(renderer, threadID);
|
VULKAN_INTERNAL_GetInactiveCommandBufferFromPool(renderer, threadID);
|
||||||
|
|
||||||
|
if (commandBuffer == NULL) {
|
||||||
|
SDL_UnlockMutex(renderer->acquireCommandBufferLock);
|
||||||
|
return NULL;
|
||||||
|
}
|
||||||
|
|
||||||
DescriptorSetCache *descriptorSetCache =
|
DescriptorSetCache *descriptorSetCache =
|
||||||
VULKAN_INTERNAL_AcquireDescriptorSetCache(renderer);
|
VULKAN_INTERNAL_AcquireDescriptorSetCache(renderer);
|
||||||
|
|
||||||
SDL_UnlockMutex(renderer->acquireCommandBufferLock);
|
SDL_UnlockMutex(renderer->acquireCommandBufferLock);
|
||||||
|
|
||||||
if (commandBuffer == NULL) {
|
|
||||||
return NULL;
|
|
||||||
}
|
|
||||||
|
|
||||||
commandBuffer->descriptorSetCache = descriptorSetCache;
|
commandBuffer->descriptorSetCache = descriptorSetCache;
|
||||||
|
|
||||||
// Reset state
|
// Reset state
|
||||||
|
|||||||
Reference in New Issue
Block a user