summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPaul Berry <stereotype441@gmail.com>2013-11-25 07:49:15 -0800
committerPaul Berry <stereotype441@gmail.com>2013-11-26 13:22:23 -0800
commit37bdde1087584f4c1839e14db75c157b83246ebd (patch)
tree75750ed887e95d9b7063747ca48f07794368392c
parent2714ca81b9bad3dec3894fac97f34502c80b1697 (diff)
i965/gs: Set GS prog_data to NULL if there is no GS program.
The previous commit fixes a bug wherein we would incorrectly refer to stale geometry shader prog_data when no geometry shader was active. This patch reduces the likelihood of that sort of bug occurring in the future by setting prog_data to NULL whenever there is no GS program. Cc: mesa-stable@lists.freedesktop.org Reviewed-by: Eric Anholt <eric@anholt.net> Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
-rw-r--r--src/mesa/drivers/dri/i965/brw_vec4_gs.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/mesa/drivers/dri/i965/brw_vec4_gs.c b/src/mesa/drivers/dri/i965/brw_vec4_gs.c
index b52d646aa00..018b0b67461 100644
--- a/src/mesa/drivers/dri/i965/brw_vec4_gs.c
+++ b/src/mesa/drivers/dri/i965/brw_vec4_gs.c
@@ -259,6 +259,13 @@ brw_upload_gs_prog(struct brw_context *brw)
brw->vue_map_geom_out = brw->vue_map_vs;
brw->state.dirty.brw |= BRW_NEW_VUE_MAP_GEOM_OUT;
}
+
+ /* Other state atoms had better not try to access prog_data, since
+ * there's no GS program.
+ */
+ brw->gs.prog_data = NULL;
+ brw->gs.base.prog_data = NULL;
+
return;
}