diff --git a/renderdoc/driver/d3d12/d3d12_state.cpp b/renderdoc/driver/d3d12/d3d12_state.cpp index 00487e264..907071751 100644 --- a/renderdoc/driver/d3d12/d3d12_state.cpp +++ b/renderdoc/driver/d3d12/d3d12_state.cpp @@ -87,12 +87,15 @@ vector D3D12RenderState::GetRTVIDs() const if(rtSingle) { - const D3D12Descriptor *descs = DescriptorFromPortableHandle(GetResourceManager(), rts[0]); - - for(UINT i = 0; i < rts.size(); i++) + if(!rts.empty()) { - RDCASSERT(descs[i].GetType() == D3D12Descriptor::TypeRTV); - ret.push_back(GetResID(descs[i].nonsamp.resource)); + const D3D12Descriptor *descs = DescriptorFromPortableHandle(GetResourceManager(), rts[0]); + + for(UINT i = 0; i < rts.size(); i++) + { + RDCASSERT(descs[i].GetType() == D3D12Descriptor::TypeRTV); + ret.push_back(GetResID(descs[i].nonsamp.resource)); + } } } else