From c0200b66c8b3cd223dcb668ee8bdbd3226080b2e Mon Sep 17 00:00:00 2001 From: baldurk Date: Mon, 28 May 2018 20:44:43 +0100 Subject: [PATCH] Check for presence of debug info before fetching line mapping --- renderdoc/driver/d3d11/d3d11_shaderdebug.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/renderdoc/driver/d3d11/d3d11_shaderdebug.cpp b/renderdoc/driver/d3d11/d3d11_shaderdebug.cpp index db5a6786d..def7ef1e6 100644 --- a/renderdoc/driver/d3d11/d3d11_shaderdebug.cpp +++ b/renderdoc/driver/d3d11/d3d11_shaderdebug.cpp @@ -974,7 +974,7 @@ ShaderDebugTrace D3D11Replay::DebugVertex(uint32_t eventId, uint32_t vertid, uin ret.hasLocals = dxbc->m_DebugInfo && dxbc->m_DebugInfo->HasLocals(); ret.lineInfo.resize(dxbc->GetNumInstructions()); - for(size_t i = 0; i < dxbc->GetNumInstructions(); i++) + for(size_t i = 0; dxbc->m_DebugInfo && i < dxbc->GetNumInstructions(); i++) { const ASMOperation &op = dxbc->GetInstruction(i); dxbc->m_DebugInfo->GetLineInfo(i, op.offset, ret.lineInfo[i]); @@ -1969,7 +1969,7 @@ ShaderDebugTrace D3D11Replay::DebugPixel(uint32_t eventId, uint32_t x, uint32_t traces[destIdx].hasLocals = dxbc->m_DebugInfo && dxbc->m_DebugInfo->HasLocals(); traces[destIdx].lineInfo.resize(dxbc->GetNumInstructions()); - for(size_t i = 0; i < dxbc->GetNumInstructions(); i++) + for(size_t i = 0; dxbc->m_DebugInfo && i < dxbc->GetNumInstructions(); i++) { const ASMOperation &op = dxbc->GetInstruction(i); dxbc->m_DebugInfo->GetLineInfo(i, op.offset, traces[destIdx].lineInfo[i]); @@ -2064,7 +2064,7 @@ ShaderDebugTrace D3D11Replay::DebugThread(uint32_t eventId, const uint32_t group ret.hasLocals = dxbc->m_DebugInfo && dxbc->m_DebugInfo->HasLocals(); ret.lineInfo.resize(dxbc->GetNumInstructions()); - for(size_t i = 0; i < dxbc->GetNumInstructions(); i++) + for(size_t i = 0; dxbc->m_DebugInfo && i < dxbc->GetNumInstructions(); i++) { const ASMOperation &op = dxbc->GetInstruction(i); dxbc->m_DebugInfo->GetLineInfo(i, op.offset, ret.lineInfo[i]);