summaryrefslogtreecommitdiffstats
path: root/src/gallium/drivers/radeonsi/si_shader.c
diff options
context:
space:
mode:
authorMarek Olšák <[email protected]>2015-10-09 00:54:17 +0200
committerMarek Olšák <[email protected]>2015-10-17 21:40:03 +0200
commitaa060e276c203baf4691d4a4722accd5bdbb8526 (patch)
tree2dad065ed59d8282efdcce05f2526529dc5c8a31 /src/gallium/drivers/radeonsi/si_shader.c
parentc4f086f3999894c9b6fe2de466add3bb09c8b354 (diff)
radeonsi: fix a GS copy shader leak
Cc: [email protected] Reviewed-by: Michel Dänzer <[email protected]>
Diffstat (limited to 'src/gallium/drivers/radeonsi/si_shader.c')
-rw-r--r--src/gallium/drivers/radeonsi/si_shader.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/gallium/drivers/radeonsi/si_shader.c b/src/gallium/drivers/radeonsi/si_shader.c
index 085794ba3b3..49ab9404b81 100644
--- a/src/gallium/drivers/radeonsi/si_shader.c
+++ b/src/gallium/drivers/radeonsi/si_shader.c
@@ -4193,8 +4193,10 @@ out:
void si_shader_destroy(struct si_shader *shader)
{
- if (shader->gs_copy_shader)
+ if (shader->gs_copy_shader) {
si_shader_destroy(shader->gs_copy_shader);
+ FREE(shader->gs_copy_shader);
+ }
if (shader->scratch_bo)
r600_resource_reference(&shader->scratch_bo, NULL);