소스 검색

If VULKAN_Submit fails during VULKAN_INTERNAL_CreateTexture, destroy the texture and return NULL

(cherry picked from commit 9479ac039cc3e90129df751d7b2c0fab8970d60e)
Katelyn Gadd 4 달 전
부모
커밋
36b306a36c
1개의 변경된 파일4개의 추가작업 그리고 1개의 파일을 삭제
  1. 4 1
      src/gpu/vulkan/SDL_gpu_vulkan.c

+ 4 - 1
src/gpu/vulkan/SDL_gpu_vulkan.c

@@ -5893,7 +5893,10 @@ static VulkanTexture *VULKAN_INTERNAL_CreateTexture(
             VULKAN_TEXTURE_USAGE_MODE_UNINITIALIZED,
             VULKAN_TEXTURE_USAGE_MODE_UNINITIALIZED,
             texture);
             texture);
         VULKAN_INTERNAL_TrackTexture(barrierCommandBuffer, texture);
         VULKAN_INTERNAL_TrackTexture(barrierCommandBuffer, texture);
-        VULKAN_Submit((SDL_GPUCommandBuffer *)barrierCommandBuffer);
+        if (!VULKAN_Submit((SDL_GPUCommandBuffer *)barrierCommandBuffer)) {
+            VULKAN_INTERNAL_DestroyTexture(renderer, texture);
+            return NULL;
+        }
     }
     }
 
 
     return texture;
     return texture;