Mesa (arb_geometry_shader4): gs: fix a crash when no gs is set and we' re setting gs specific state

Zack Rusin zack at kemper.freedesktop.org
Mon Aug 10 04:14:18 UTC 2009


Module: Mesa
Branch: arb_geometry_shader4
Commit: d6e6745c7ff869a83a988042a8ed185824c89b54
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=d6e6745c7ff869a83a988042a8ed185824c89b54

Author: Zack Rusin <zackr at vmware.com>
Date:   Mon Aug 10 00:18:35 2009 -0400

gs: fix a crash when no gs is set and we're setting gs specific state

---

 src/mesa/state_tracker/st_atom_constbuf.c |    7 +++++--
 1 files changed, 5 insertions(+), 2 deletions(-)

diff --git a/src/mesa/state_tracker/st_atom_constbuf.c b/src/mesa/state_tracker/st_atom_constbuf.c
index 11ea8ac..caf72f0 100644
--- a/src/mesa/state_tracker/st_atom_constbuf.c
+++ b/src/mesa/state_tracker/st_atom_constbuf.c
@@ -147,9 +147,12 @@ const struct st_tracked_state st_update_fs_constants = {
 static void update_gs_constants(struct st_context *st )
 {
    struct st_geometry_program *gp = st->gp;
-   struct gl_program_parameter_list *params = gp->Base.Base.Parameters;
+   struct gl_program_parameter_list *params;
 
-   st_upload_constants( st, params, PIPE_SHADER_GEOMETRY );
+   if (gp) {
+      params = gp->Base.Base.Parameters;
+      st_upload_constants( st, params, PIPE_SHADER_GEOMETRY );
+   }
 }
 
 const struct st_tracked_state st_update_gs_constants = {




More information about the mesa-commit mailing list