From 32dbbaa707e9657bab0d98efc19be874e3dceb21 Mon Sep 17 00:00:00 2001 From: baldurk Date: Tue, 1 Nov 2022 16:33:18 +0000 Subject: [PATCH] Correctly handle D3D12 resources with no sparse subresources at all --- renderdoc/driver/d3d12/d3d12_initstate.cpp | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/renderdoc/driver/d3d12/d3d12_initstate.cpp b/renderdoc/driver/d3d12/d3d12_initstate.cpp index 6623a78bf..3a0d7942c 100644 --- a/renderdoc/driver/d3d12/d3d12_initstate.cpp +++ b/renderdoc/driver/d3d12/d3d12_initstate.cpp @@ -1285,7 +1285,11 @@ void D3D12ResourceManager::Apply_InitialState(ID3D12DeviceChild *live, } const uint32_t *nextIncludedSubresource = data.subresources.begin(); - if(data.subresources.empty() || *nextIncludedSubresource == ~0U) + // if no subresources were serialised, just skip! + if(data.subresources.empty()) + numSubresources = 0; + // if ALL subresources were serialised, serialise them all + else if(*nextIncludedSubresource == ~0U) nextIncludedSubresource = NULL; UINT64 offset = 0;