diff options
author | Paul Berry <stereotype441@gmail.com> | 2013-11-25 07:49:15 -0800 |
---|---|---|
committer | Paul Berry <stereotype441@gmail.com> | 2013-11-26 13:22:23 -0800 |
commit | 37bdde1087584f4c1839e14db75c157b83246ebd (patch) | |
tree | 75750ed887e95d9b7063747ca48f07794368392c | |
parent | 2714ca81b9bad3dec3894fac97f34502c80b1697 (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.c | 7 |
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; } |