[PATCH vkd3d 2/3] vkd3d-shader: Return NULL from vkd3d_shader_message_context_copy_messages() if there are no messages to copy.

Zebediah Figura zfigura at codeweavers.com
Thu Oct 8 22:22:14 CDT 2020


Signed-off-by: Zebediah Figura <zfigura at codeweavers.com>
---
 libs/vkd3d-shader/vkd3d_shader_main.c | 3 +++
 tests/shader_runner_d3d12.c           | 2 ++
 2 files changed, 5 insertions(+)

diff --git a/libs/vkd3d-shader/vkd3d_shader_main.c b/libs/vkd3d-shader/vkd3d_shader_main.c
index d3d86ed7..8d33859c 100644
--- a/libs/vkd3d-shader/vkd3d_shader_main.c
+++ b/libs/vkd3d-shader/vkd3d_shader_main.c
@@ -149,6 +149,9 @@ bool vkd3d_shader_message_context_copy_messages(struct vkd3d_shader_message_cont
 
     *out = NULL;
 
+    if (!context->messages.content_size)
+        return true;
+
     if (!(messages = vkd3d_malloc(context->messages.content_size + 1)))
         return false;
     memcpy(messages, context->messages.buffer, context->messages.content_size + 1);
diff --git a/tests/shader_runner_d3d12.c b/tests/shader_runner_d3d12.c
index 16bcbf1f..39cd59a8 100644
--- a/tests/shader_runner_d3d12.c
+++ b/tests/shader_runner_d3d12.c
@@ -337,6 +337,8 @@ START_TEST(shader_runner_d3d12)
                     ok(hr == E_FAIL, "Got unexpected hr %#x.\n", hr);
                     ok(!blob, "Expected no compiled shader blob.\n");
                     ok(!!errors, "Expected non-NULL error blob.\n");
+                    if (!errors)
+                        return;
 
                     if (vkd3d_test_state.debug_level)
                         trace("%s\n", (char *)ID3D10Blob_GetBufferPointer(errors));
-- 
2.28.0




More information about the wine-devel mailing list