summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSamuel Pitoiset <[email protected]>2017-09-14 18:47:04 +0200
committerSamuel Pitoiset <[email protected]>2017-09-15 09:16:38 +0200
commit8e8c7c670340e747e9860fb6cbfc3e89f315fcc2 (patch)
tree13b4ebd090763a91f7a2820457fba3b136d3f2d4
parenta0495d4bb3a3f9e61652c7cab339547edbbef8ba (diff)
radv: fix a potential crash if attachments allocation failed
Also, it's useless to set the error code twice. Though, we should probably skip the next commands when the command buffer is considered invalid. Signed-off-by: Samuel Pitoiset <[email protected]> Reviewed-by: Bas Nieuwenhuizen <[email protected]>
-rw-r--r--src/amd/vulkan/radv_cmd_buffer.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/amd/vulkan/radv_cmd_buffer.c b/src/amd/vulkan/radv_cmd_buffer.c
index 068247d04d4..5f22733a7d9 100644
--- a/src/amd/vulkan/radv_cmd_buffer.c
+++ b/src/amd/vulkan/radv_cmd_buffer.c
@@ -2771,9 +2771,10 @@ void radv_CmdBeginRenderPass(
cmd_buffer->state.framebuffer = framebuffer;
cmd_buffer->state.pass = pass;
cmd_buffer->state.render_area = pRenderPassBegin->renderArea;
+
result = radv_cmd_state_setup_attachments(cmd_buffer, pass, pRenderPassBegin);
if (result != VK_SUCCESS)
- cmd_buffer->record_result = result;
+ return;
radv_cmd_buffer_set_subpass(cmd_buffer, pass->subpasses, true);
assert(cmd_buffer->cs->cdw <= cdw_max);