Преглед на файлове

gpu: vulkan: Fix an uninitialised structure in SDL_BlitGPUTexture()

The SDL_GPUColorTargetInfo structure needs to be zeroed, as otherwise we
can end up trying to create a resolve_texture which doesn't exist,
causing a rather difficult-to-debug segfault when calling
SDL_BlitGPUTexture() with a load op of SDL_GPU_LOADOP_CLEAR.
David Gow преди 10 месеца
родител
ревизия
9c322386bf
променени са 1 файла, в които са добавени 1 реда и са изтрити 0 реда
  1. 1 0
      src/gpu/vulkan/SDL_gpu_vulkan.c

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

@@ -8949,6 +8949,7 @@ static void VULKAN_Blit(
     // Using BeginRenderPass to clear because vkCmdClearColorImage requires barriers anyway
     if (info->load_op == SDL_GPU_LOADOP_CLEAR) {
         SDL_GPUColorTargetInfo targetInfo;
+        SDL_zero(targetInfo);
         targetInfo.texture = info->destination.texture;
         targetInfo.mip_level = info->destination.mip_level;
         targetInfo.layer_or_depth_plane = info->destination.layer_or_depth_plane;