Module: Mesa
Branch: main
Commit: b73e2df47a6e8c03ac6556200ffbc22bbed26a5e
URL:    
http://cgit.freedesktop.org/mesa/mesa/commit/?id=b73e2df47a6e8c03ac6556200ffbc22bbed26a5e

Author: Friedrich Vock <[email protected]>
Date:   Mon Apr 17 16:19:11 2023 +0200

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: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22535>

---

 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 *

Reply via email to