From: Józef Kucia jkucia@codeweavers.com
Signed-off-by: Józef Kucia jkucia@codeweavers.com --- libs/vkd3d/vkd3d_main.c | 5 ++--- tests/d3d12.c | 6 ++++-- 2 files changed, 6 insertions(+), 5 deletions(-)
diff --git a/libs/vkd3d/vkd3d_main.c b/libs/vkd3d/vkd3d_main.c index ba55056d11f7..c65a4abcac55 100644 --- a/libs/vkd3d/vkd3d_main.c +++ b/libs/vkd3d/vkd3d_main.c @@ -343,16 +343,15 @@ HRESULT vkd3d_serialize_root_signature(const D3D12_ROOT_SIGNATURE_DESC *root_sig }
if (error_blob) - { - FIXME("Ignoring error blob %p.\n", error_blob); *error_blob = NULL; - }
if ((ret = vkd3d_shader_serialize_root_signature( (const struct vkd3d_root_signature_desc *)root_signature_desc, (enum vkd3d_root_signature_version)version, &dxbc)) < 0) { WARN("Failed to serialize root signature, vkd3d result %d.\n", ret); + if (error_blob) + FIXME("Ignoring error blob %p.\n", error_blob); return hresult_from_vkd3d_result(ret); }
diff --git a/tests/d3d12.c b/tests/d3d12.c index 1b6b91763269..a854bd6ca8c7 100644 --- a/tests/d3d12.c +++ b/tests/d3d12.c @@ -9728,14 +9728,16 @@ static void test_root_signature_deserialization_(unsigned int line, const DWORD static void test_root_signature_serialization_(unsigned int line, const DWORD *code, size_t code_size, const D3D12_ROOT_SIGNATURE_DESC *desc) { + ID3DBlob *blob, *error_blob; DWORD *blob_buffer; size_t blob_size; - ID3DBlob *blob; unsigned int i; HRESULT hr;
- hr = D3D12SerializeRootSignature(desc, D3D_ROOT_SIGNATURE_VERSION_1_0, &blob, NULL); + error_blob = (ID3DBlob *)0xdeadbeef; + hr = D3D12SerializeRootSignature(desc, D3D_ROOT_SIGNATURE_VERSION_1_0, &blob, &error_blob); ok_(line)(hr == S_OK, "Failed to serialize root signature, hr %#x.\n", hr); + ok_(line)(!error_blob, "Got unexpected error blob %p.\n", error_blob);
blob_buffer = ID3D10Blob_GetBufferPointer(blob); blob_size = ID3D10Blob_GetBufferSize(blob);