Mesa (master): radeonsi: Fix resource leak in gs_copy_shader allocation failure path
Edward O'Callaghan
funfunctor at kemper.freedesktop.org
Mon Nov 21 13:05:14 UTC 2016
Module: Mesa
Branch: master
Commit: 9c5b1c799073779101d358d85eff0bdc389c93fc
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=9c5b1c799073779101d358d85eff0bdc389c93fc
Author: Gwan-gyeong Mun <elongbug at gmail.com>
Date: Sun Nov 20 13:19:57 2016 +0900
radeonsi: Fix resource leak in gs_copy_shader allocation failure path
CID 1394028
Signed-off-by: Mun Gwan-gyeong <elongbug at gmail.com>
Reviewed-by: Edward O'Callaghan <funfunctor at folklore1984.net>
Reviewed-by: Marek Olšák <marek.olsak at amd.com>
Reviewed-by: Nicolai Hähnle <nicolai.haehnle at amd.com>
---
src/gallium/drivers/radeonsi/si_shader.c | 8 +++++++-
1 file changed, 7 insertions(+), 1 deletion(-)
diff --git a/src/gallium/drivers/radeonsi/si_shader.c b/src/gallium/drivers/radeonsi/si_shader.c
index 917e148..608cb72 100644
--- a/src/gallium/drivers/radeonsi/si_shader.c
+++ b/src/gallium/drivers/radeonsi/si_shader.c
@@ -6137,9 +6137,15 @@ si_generate_gs_copy_shader(struct si_screen *sscreen,
outputs = MALLOC(gsinfo->num_outputs * sizeof(outputs[0]));
+ if (!outputs)
+ return NULL;
+
shader = CALLOC_STRUCT(si_shader);
- if (!shader)
+ if (!shader) {
+ FREE(outputs);
return NULL;
+ }
+
shader->selector = gs_selector;
shader->is_gs_copy_shader = true;
More information about the mesa-commit
mailing list