From b73e2df47a6e8c03ac6556200ffbc22bbed26a5e Mon Sep 17 00:00:00 2001 From: Friedrich Vock Date: Mon, 17 Apr 2023 16:19:11 +0200 Subject: [PATCH] radv: Don't leak the RT prolog binary Fixes: 063d0c90 ("radv: Combine all the parts together with a main loop for an RT pipeline.") Part-of: --- src/amd/vulkan/radv_shader.c | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/src/amd/vulkan/radv_shader.c b/src/amd/vulkan/radv_shader.c index a25a3a6955d..fe3ee0f6b55 100644 --- a/src/amd/vulkan/radv_shader.c +++ b/src/amd/vulkan/radv_shader.c @@ -2382,7 +2382,7 @@ radv_create_rt_prolog(struct radv_device *device) radv_postprocess_binary_config(device, binary, &in_args); prolog = radv_shader_create(device, binary); if (!prolog) - goto fail; + goto done; if (device->keep_shader_info || options.dump_shader) { radv_capture_shader_executable_info(device, prolog, NULL, 0, binary); @@ -2393,11 +2393,9 @@ radv_create_rt_prolog(struct radv_device *device) fprintf(stderr, "\ndisasm:\n%s\n", prolog->disasm_string); } - return prolog; - -fail: +done: free(binary); - return NULL; + return prolog; } struct radv_shader_part *