valgrind reports them as leaked, and I could not find anything making a copy of the nir pointer. Also, radv_device_init_meta_blit_color() is already freeing them unconditionally like this.
Signed-off-by: Grazvydas Ignotas <nota...@gmail.com> --- src/amd/vulkan/radv_meta_blit.c | 6 ++---- src/amd/vulkan/radv_query.c | 6 ++---- 2 files changed, 4 insertions(+), 8 deletions(-) diff --git a/src/amd/vulkan/radv_meta_blit.c b/src/amd/vulkan/radv_meta_blit.c index cc8ca32..ee3e286 100644 --- a/src/amd/vulkan/radv_meta_blit.c +++ b/src/amd/vulkan/radv_meta_blit.c @@ -1292,14 +1292,12 @@ radv_device_init_meta_blit_state(struct radv_device *device) result = radv_device_init_meta_blit_depth(device, &vs); if (result != VK_SUCCESS) goto fail; result = radv_device_init_meta_blit_stencil(device, &vs); - if (result != VK_SUCCESS) - goto fail; - return VK_SUCCESS; fail: ralloc_free(vs.nir); - radv_device_finish_meta_blit_state(device); + if (result != VK_SUCCESS) + radv_device_finish_meta_blit_state(device); return result; } diff --git a/src/amd/vulkan/radv_query.c b/src/amd/vulkan/radv_query.c index 6d2325d..a0241ca 100644 --- a/src/amd/vulkan/radv_query.c +++ b/src/amd/vulkan/radv_query.c @@ -610,16 +610,14 @@ VkResult radv_device_init_meta_query_state(struct radv_device *device) result = radv_CreateComputePipelines(radv_device_to_handle(device), radv_pipeline_cache_to_handle(&device->meta_state.cache), 1, &pipeline_statistics_vk_pipeline_info, NULL, &device->meta_state.query.pipeline_statistics_query_pipeline); - if (result != VK_SUCCESS) - goto fail; - return VK_SUCCESS; fail: - radv_device_finish_meta_query_state(device); + if (result != VK_SUCCESS) + radv_device_finish_meta_query_state(device); ralloc_free(occlusion_cs.nir); ralloc_free(pipeline_statistics_cs.nir); return result; } -- 2.7.4 _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev