[PATCH vkd3d 1/2] tests: Set the wrong descriptor heaps in test_descriptor_tables().

Conor McCarthy cmccarthy at codeweavers.com
Wed Jan 12 23:31:05 CST 2022


Has no effect in Windows at least on AMD. Not calling SetDescriptorHeaps()
at all has no effect in Windows on any hardware so this is likely to be
universal too.

Signed-off-by: Conor McCarthy <cmccarthy at codeweavers.com>
---
 tests/d3d12.c | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

diff --git a/tests/d3d12.c b/tests/d3d12.c
index 3b0c4242..df93b71a 100644
--- a/tests/d3d12.c
+++ b/tests/d3d12.c
@@ -16067,7 +16067,7 @@ static void test_srv_component_mapping(void)
 
 static void test_descriptor_tables(void)
 {
-    ID3D12DescriptorHeap *heap, *sampler_heap, *heaps[2];
+    ID3D12DescriptorHeap *heap, *sampler_heap, *wrong_heap, *wrong_sampler_heap, *heaps[2];
     D3D12_ROOT_SIGNATURE_DESC root_signature_desc;
     D3D12_DESCRIPTOR_RANGE descriptor_range[4];
     D3D12_CONSTANT_BUFFER_VIEW_DESC cbv_desc;
@@ -16194,6 +16194,8 @@ static void test_descriptor_tables(void)
 
     heap = create_gpu_descriptor_heap(context.device, D3D12_DESCRIPTOR_HEAP_TYPE_CBV_SRV_UAV, 6);
     sampler_heap = create_gpu_descriptor_heap(context.device, D3D12_DESCRIPTOR_HEAP_TYPE_SAMPLER, 1);
+    wrong_heap = create_gpu_descriptor_heap(context.device, D3D12_DESCRIPTOR_HEAP_TYPE_CBV_SRV_UAV, 6);
+    wrong_sampler_heap = create_gpu_descriptor_heap(context.device, D3D12_DESCRIPTOR_HEAP_TYPE_SAMPLER, 1);
 
     descriptor_size = ID3D12Device_GetDescriptorHandleIncrementSize(context.device,
             D3D12_DESCRIPTOR_HEAP_TYPE_CBV_SRV_UAV);
@@ -16237,7 +16239,7 @@ static void test_descriptor_tables(void)
     ID3D12GraphicsCommandList_OMSetRenderTargets(command_list, 1, &context.rtv, false, NULL);
     ID3D12GraphicsCommandList_SetGraphicsRootSignature(command_list, context.root_signature);
     ID3D12GraphicsCommandList_SetPipelineState(command_list, context.pipeline_state);
-    heaps[0] = heap; heaps[1] = sampler_heap;
+    heaps[0] = wrong_heap; heaps[1] = wrong_sampler_heap;
     ID3D12GraphicsCommandList_SetDescriptorHeaps(command_list, ARRAY_SIZE(heaps), heaps);
     ID3D12GraphicsCommandList_SetGraphicsRootDescriptorTable(command_list, 0, gpu_handle);
     ID3D12GraphicsCommandList_SetGraphicsRootDescriptorTable(command_list, 1,
@@ -16258,6 +16260,8 @@ static void test_descriptor_tables(void)
         ID3D12Resource_Release(textures[i]);
     ID3D12DescriptorHeap_Release(heap);
     ID3D12DescriptorHeap_Release(sampler_heap);
+    ID3D12DescriptorHeap_Release(wrong_heap);
+    ID3D12DescriptorHeap_Release(wrong_sampler_heap);
     destroy_test_context(&context);
 }
 
-- 
2.34.1




More information about the wine-devel mailing list