diff --git a/renderdoc/driver/d3d12/d3d12_shaderdebug.cpp b/renderdoc/driver/d3d12/d3d12_shaderdebug.cpp index 440037f2a..d60ccab50 100644 --- a/renderdoc/driver/d3d12/d3d12_shaderdebug.cpp +++ b/renderdoc/driver/d3d12/d3d12_shaderdebug.cpp @@ -1852,14 +1852,14 @@ ShaderDebugTrace *D3D12Replay::DebugVertex(uint32_t eventId, uint32_t vertid, ui ret->inputs = state.inputs; delete[] instData; - - dxbc->FillTraceLineInfo(*ret); } else { RDCERR("TODO ADD DXIL VERTEX SHADER DEBUGGER SUPPORT"); } + if(ret) + dxbc->FillTraceLineInfo(*ret); return ret; } @@ -2692,14 +2692,14 @@ void ExtractInputsPS(PSInput IN, ret->constantBlocks = global.constantBlocks; ret->inputs = state.inputs; - - dxbc->FillTraceLineInfo(*ret); } else { RDCERR("TODO ADD DXIL PIXEL SHADER DEBUGGER SUPPORT"); } + if(ret) + dxbc->FillTraceLineInfo(*ret); return ret; } @@ -2773,8 +2773,6 @@ ShaderDebugTrace *D3D12Replay::DebugThread(uint32_t eventId, ret->constantBlocks = global.constantBlocks; - dxbc->FillTraceLineInfo(*ret); - // add fake inputs for semantics for(size_t i = 0; i < dxbc->GetDXBCByteCode()->GetNumDeclarations(); i++) { @@ -2834,6 +2832,8 @@ ShaderDebugTrace *D3D12Replay::DebugThread(uint32_t eventId, RDCERR("TODO ADD DXIL COMPUTE SHADER DEBUGGER SUPPORT"); } + if(ret) + dxbc->FillTraceLineInfo(*ret); return ret; }