From 6a97c6c17beca6a1c1eb1fb70697e3c3e10d5aa3 Mon Sep 17 00:00:00 2001 From: baldurk Date: Mon, 11 May 2026 14:34:30 +0100 Subject: [PATCH] Disallow debugging D3D11 shaders that use unbound constant buffer arrays --- renderdoc/driver/shaders/dxbc/dxbc_bytecode.cpp | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/renderdoc/driver/shaders/dxbc/dxbc_bytecode.cpp b/renderdoc/driver/shaders/dxbc/dxbc_bytecode.cpp index 483141a4a..1d6ee2ba7 100644 --- a/renderdoc/driver/shaders/dxbc/dxbc_bytecode.cpp +++ b/renderdoc/driver/shaders/dxbc/dxbc_bytecode.cpp @@ -624,6 +624,15 @@ rdcstr Program::GetDebugStatus() // otherwise we need to check that no unsupported vendor extensions are used DecodeProgram(); + for(const Declaration &decl : m_Declarations) + { + if(decl.operand.type == TYPE_CONSTANT_BUFFER && decl.operand.indices.size() == 3 && + decl.operand.indices[2].index == 0xffffffff) + { + return "Unsupported unbounded ConstantBuffer array"; + } + } + for(const Operation &op : m_Instructions) { if(op.operation >= OPCODE_VENDOR_FIRST)