summaryrefslogtreecommitdiff
path: root/src/mesa/state_tracker/st_atom_rasterizer.c
diff options
context:
space:
mode:
authorBen Skeggs <skeggsb@gmail.com>2008-01-20 10:38:35 +1100
committerBen Skeggs <skeggsb@gmail.com>2008-01-20 10:38:35 +1100
commitdf09ed9d1ecf11be14ee7f189273c14375fbaa57 (patch)
tree7322a2670877dff003f57a5485c9e92226b57167 /src/mesa/state_tracker/st_atom_rasterizer.c
parent0feec292ddc279998a1e25c10ea70d211f7b4b62 (diff)
parenta1f4a5e802ad62c88fca6834b9de1c83672230a6 (diff)
Merge branch 'upstream-gallium-0.1' into darktama-gallium-0.1
Diffstat (limited to 'src/mesa/state_tracker/st_atom_rasterizer.c')
-rw-r--r--src/mesa/state_tracker/st_atom_rasterizer.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/src/mesa/state_tracker/st_atom_rasterizer.c b/src/mesa/state_tracker/st_atom_rasterizer.c
index 35fd506458..beae36bca0 100644
--- a/src/mesa/state_tracker/st_atom_rasterizer.c
+++ b/src/mesa/state_tracker/st_atom_rasterizer.c
@@ -110,7 +110,14 @@ static void update_raster_state( struct st_context *st )
* GL_VERTEX_PROGRAM_TWO_SIDE is set). Note the logic here.
*/
if (ctx->VertexProgram._Current) {
- raster.light_twoside = ctx->VertexProgram.TwoSideEnabled;
+ if (ctx->VertexProgram._Enabled) {
+ /* user-defined program */
+ raster.light_twoside = ctx->VertexProgram.TwoSideEnabled;
+ }
+ else {
+ /* TNL-generated program */
+ raster.light_twoside = ctx->Light.Enabled && ctx->Light.Model.TwoSide;
+ }
}
else if (ctx->Light.Enabled && ctx->Light.Model.TwoSide) {
raster.light_twoside = 1;