tests: Test for range overflow in test_root_signature_limits().

Signed-off-by: Conor McCarthy <cmccarthy@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
Conor McCarthy 2021-08-03 00:43:16 +10:00 committed by Alexandre Julliard
parent eb804a5a9f
commit 50c4e43eaa

View File

@ -2865,6 +2865,16 @@ static void test_root_signature_limits(void)
hr = create_root_signature(device, &root_signature_desc, &root_signature);
ok(hr == E_INVALIDARG, "Got unexpected hr %#x.\n", hr);
/* Windows results vary for overflowing to zero, but anything beyond that is invalid. */
root_signature_desc.NumParameters = 1;
descriptor_ranges[0].NumDescriptors = 0x1001;
descriptor_ranges[0].OffsetInDescriptorsFromTableStart = 0xfffff000;
hr = create_root_signature(device, &root_signature_desc, &root_signature);
todo
ok(hr == E_INVALIDARG, "Got unexpected hr %#x.\n", hr);
if (SUCCEEDED(hr))
ID3D12RootSignature_Release(root_signature);
refcount = ID3D12Device_Release(device);
ok(!refcount, "ID3D12Device has %u references left.\n", (unsigned int)refcount);
}