Mesa (master): radeonsi: Use proper member name for deleting export shader PM4 state

Michel Dänzer daenzer at kemper.freedesktop.org
Mon Mar 10 03:46:08 UTC 2014


Module: Mesa
Branch: master
Commit: 678cf9618f252eea209c9f37211dde325223c5ae
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=678cf9618f252eea209c9f37211dde325223c5ae

Author: Michel Dänzer <michel.daenzer at amd.com>
Date:   Mon Mar 10 12:21:50 2014 +0900

radeonsi: Use proper member name for deleting export shader PM4 state

Fixes double-free with some piglit tests using geometry shaders.

Reviewed-by: Marek Olšák <marek.olsak at amd.com>

---

 src/gallium/drivers/radeonsi/si_state.c |    2 ++
 1 file changed, 2 insertions(+)

diff --git a/src/gallium/drivers/radeonsi/si_state.c b/src/gallium/drivers/radeonsi/si_state.c
index 0ee4154..7d4f3c7 100644
--- a/src/gallium/drivers/radeonsi/si_state.c
+++ b/src/gallium/drivers/radeonsi/si_state.c
@@ -2360,6 +2360,8 @@ static void si_delete_shader_selector(struct pipe_context *ctx,
 			si_pm4_delete_state(sctx, gs, p->pm4);
 		else if (sel->type == PIPE_SHADER_FRAGMENT)
 			si_pm4_delete_state(sctx, ps, p->pm4);
+		else if (p->key.vs.as_es)
+			si_pm4_delete_state(sctx, es, p->pm4);
 		else
 			si_pm4_delete_state(sctx, vs, p->pm4);
 		si_pipe_shader_destroy(ctx, p);




More information about the mesa-commit mailing list