[Mesa-dev] [PATCH 1/4] glsl_to_tgsi: Fix potential leak

Ernestas Kulik ernestas.kulik at gmail.com
Thu Aug 30 16:02:44 UTC 2018


Reported by Coverity: arr_live_ranges is freed in a different branch
than the one in which it was allocated.

CID: 1438391
Signed-off-by: Ernestas Kulik <ernestas.kulik at gmail.com>
---
 src/mesa/state_tracker/st_glsl_to_tgsi.cpp | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

diff --git a/src/mesa/state_tracker/st_glsl_to_tgsi.cpp b/src/mesa/state_tracker/st_glsl_to_tgsi.cpp
index 7b96947c60..68573f628d 100644
--- a/src/mesa/state_tracker/st_glsl_to_tgsi.cpp
+++ b/src/mesa/state_tracker/st_glsl_to_tgsi.cpp
@@ -5616,10 +5616,11 @@ glsl_to_tgsi_visitor::merge_registers(void)
 
       this->next_array =  merge_arrays(this->next_array, this->array_sizes,
 				       &this->instructions, arr_live_ranges);
-
-      if (arr_live_ranges)
-	 delete[] arr_live_ranges;
    }
+
+   if (arr_live_ranges)
+      delete[] arr_live_ranges;
+
    ralloc_free(reg_live_ranges);
 }
 
-- 
2.17.1



More information about the mesa-dev mailing list