From 6c7126eca1fd7a33f12a056f5cdaeef3b5b475b7 Mon Sep 17 00:00:00 2001 From: Jake Turner Date: Mon, 27 Oct 2025 16:40:32 +0000 Subject: [PATCH] Fix potentially incorrect indexing in DXIL debugger resource parsing Found by ASAN build --- renderdoc/driver/shaders/dxil/dxil_disassemble.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/renderdoc/driver/shaders/dxil/dxil_disassemble.cpp b/renderdoc/driver/shaders/dxil/dxil_disassemble.cpp index b2166fae1..9a93deed6 100644 --- a/renderdoc/driver/shaders/dxil/dxil_disassemble.cpp +++ b/renderdoc/driver/shaders/dxil/dxil_disassemble.cpp @@ -5482,7 +5482,7 @@ void Program::ParseReferences(const DXBC::Reflection *reflection) { RDCASSERT(!GetResourceReference(resultId)); ResourceReference resRef(resultIdStr, *resourceBase, resIndex); - m_ResourceByIdHandles[resultId] = m_ResourceByIdHandles.size(); + m_ResourceByIdHandles[resultId] = m_ResourceReferences.size(); m_ResourceReferences.push_back(resRef); resName = resourceBase->name; uint32_t arrayIndex = 0; @@ -5545,7 +5545,7 @@ void Program::ParseReferences(const DXBC::Reflection *reflection) { const ResourceReference resRef = *pResRef; resBaseName = resRef.resourceBase.name; - m_ResourceByIdHandles[resultId] = m_ResourceByIdHandles.size(); + m_ResourceByIdHandles[resultId] = m_ResourceReferences.size(); m_ResourceReferences.push_back(resRef); } uint32_t annotateHandleCount = m_ResourceAnnotateCounts[resBaseName];