From: Józef Kucia <jkucia(a)codeweavers.com> Do not require that source range sizes match destination range sizes. It works on Windows even though D3D12 validation layers throw errors about size mismatches. Signed-off-by: Józef Kucia <jkucia(a)codeweavers.com> --- libs/vkd3d/device.c | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/libs/vkd3d/device.c b/libs/vkd3d/device.c index cf40e7a1f064..9e3682830684 100644 --- a/libs/vkd3d/device.c +++ b/libs/vkd3d/device.c @@ -1997,17 +1997,14 @@ static void STDMETHODCALLTYPE d3d12_device_CopyDescriptors(ID3D12Device *iface, dst_range_size = dst_descriptor_range_sizes ? dst_descriptor_range_sizes[dst_range_idx] : 1; } - assert(dst_range_idx < dst_descriptor_range_count); - assert(dst_idx < dst_range_size); + if (dst_range_idx >= dst_descriptor_range_count) + break; d3d12_desc_copy(dst++, src++, device); ++dst_idx; } } - - assert(dst_idx == dst_range_size); - assert(dst_range_idx == dst_descriptor_range_count - 1); } static void STDMETHODCALLTYPE d3d12_device_CopyDescriptorsSimple(ID3D12Device *iface, -- 2.19.2