From 2893d67b93584e5189db37121f3c87ec93955f03 Mon Sep 17 00:00:00 2001 From: baldurk Date: Thu, 20 Oct 2016 14:07:41 +0200 Subject: [PATCH] Handle OPCODE_CUSTOMDATA when counting declarations --- renderdoc/driver/shaders/dxbc/dxbc_disassemble.cpp | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/renderdoc/driver/shaders/dxbc/dxbc_disassemble.cpp b/renderdoc/driver/shaders/dxbc/dxbc_disassemble.cpp index f55eb814e..3b6dbd9b5 100644 --- a/renderdoc/driver/shaders/dxbc/dxbc_disassemble.cpp +++ b/renderdoc/driver/shaders/dxbc/dxbc_disassemble.cpp @@ -334,7 +334,15 @@ void DXBCFile::DisassembleHexDump() if(IsDeclaration(op)) numDecls++; - tmp += Opcode::Length.Get(OpcodeToken0); + if(op == OPCODE_CUSTOMDATA) + { + // length in opcode token is 0, full length is in second dword + tmp += tmp[1]; + } + else + { + tmp += Opcode::Length.Get(OpcodeToken0); + } } m_Declarations.reserve(numDecls);