libs/vkd3d: Fix copying descriptors with NULL source range sizes.

Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
Józef Kucia
2018-03-28 15:03:19 +02:00
committed by Alexandre Julliard
parent 4dc706733e
commit 953a924ca0
2 changed files with 4 additions and 6 deletions

View File

@@ -1673,6 +1673,7 @@ static void STDMETHODCALLTYPE d3d12_device_CopyDescriptors(ID3D12Device *iface,
struct d3d12_device *device = impl_from_ID3D12Device(iface);
unsigned int dst_range_idx, dst_idx, src_range_idx, src_idx;
const struct d3d12_desc *src;
unsigned int src_range_size;
struct d3d12_desc *dst;
TRACE("iface %p, dst_descriptor_range_count %u, dst_descriptor_range_offsets %p, "
@@ -1695,7 +1696,8 @@ static void STDMETHODCALLTYPE d3d12_device_CopyDescriptors(ID3D12Device *iface,
for (src_range_idx = 0; src_range_idx < src_descriptor_range_count; ++src_range_idx)
{
src = d3d12_desc_from_cpu_handle(src_descriptor_range_offsets[src_range_idx]);
for (src_idx = 0; src_idx < src_descriptor_range_sizes[src_range_idx]; ++src_idx)
src_range_size = src_descriptor_range_sizes ? src_descriptor_range_sizes[src_range_idx] : 1;
for (src_idx = 0; src_idx < src_range_size; ++src_idx)
{
if (dst_idx >= dst_descriptor_range_sizes[dst_range_idx])
{