vkCmdBlitImage: Make a copy of the VkImageBlit structure
Don't hold a pointer to the structure - there's no guarantees it'll still be vaild by command buffer execution time.
Fixes flakiness of the dEQP-VK.memory.pipeline_barrier.transfer_dst_storage_image.* tests
Bug: b/124729778
Change-Id: I747512b1a34c5d4d7dff227b15b08c69d07b298d
Reviewed-on: https://swiftshader-review.googlesource.com/c/25008
Kokoro-Presubmit: kokoro <noreply+kokoro@google.com>
Reviewed-by: Nicolas Capens <nicolascapens@google.com>
Tested-by: Ben Clayton <bclayton@google.com>
diff --git a/src/Vulkan/VkCommandBuffer.cpp b/src/Vulkan/VkCommandBuffer.cpp
index b3bca2f..6c217dd 100644
--- a/src/Vulkan/VkCommandBuffer.cpp
+++ b/src/Vulkan/VkCommandBuffer.cpp
@@ -357,7 +357,7 @@
private:
VkImage srcImage;
VkImage dstImage;
- const VkImageBlit& region;
+ VkImageBlit region;
VkFilter filter;
};