From 93fc846cb2f6da3d123dd98643b9a9357dae4b8f Mon Sep 17 00:00:00 2001 From: Jake Turner Date: Fri, 17 Apr 2026 16:05:50 +0100 Subject: [PATCH] Don't modify command buffer loose events when adding them via submit The command buffer might be submitted multiple times --- renderdoc/driver/vulkan/wrappers/vk_queue_funcs.cpp | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/renderdoc/driver/vulkan/wrappers/vk_queue_funcs.cpp b/renderdoc/driver/vulkan/wrappers/vk_queue_funcs.cpp index 2949d85cc..b39534224 100644 --- a/renderdoc/driver/vulkan/wrappers/vk_queue_funcs.cpp +++ b/renderdoc/driver/vulkan/wrappers/vk_queue_funcs.cpp @@ -351,16 +351,14 @@ void WrappedVulkan::ReplayQueueSubmit(VkQueue queue, VkSubmitInfo2 submitInfo, r { // pull in any remaining events on the command buffer that weren't added to an action - uint32_t i = 0; - for(APIEvent &apievent : cmdBufInfo.curEvents) + for(const APIEvent &event : cmdBufInfo.curEvents) { + APIEvent apievent(event); apievent.eventId += m_RootEventID; m_RootEvents.push_back(apievent); m_Events.resize(apievent.eventId + 1); m_Events[apievent.eventId] = apievent; - - i++; } for(auto it = cmdBufInfo.resourceUsage.begin(); it != cmdBufInfo.resourceUsage.end(); ++it)