From: Eric Anholt Date: Wed, 14 Nov 2012 22:37:00 +0000 (-0800) Subject: i965/gen4: Respect the VERTEX_PROGRAM_TWO_SIDE vertex program/shader flag. X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=3c368bb307544a51f8b8d13f0d496a742086c9e2;p=mesa.git i965/gen4: Respect the VERTEX_PROGRAM_TWO_SIDE vertex program/shader flag. Fixes piglit "vertex-program-two-side enabled front back" and 4 others. Reviewed-by: Kenneth Graunke --- diff --git a/src/mesa/drivers/dri/i965/brw_sf.c b/src/mesa/drivers/dri/i965/brw_sf.c index 23a874aa8ec..eb361a97092 100644 --- a/src/mesa/drivers/dri/i965/brw_sf.c +++ b/src/mesa/drivers/dri/i965/brw_sf.c @@ -190,9 +190,10 @@ brw_upload_sf_prog(struct brw_context *brw) if ((ctx->Point.SpriteOrigin == GL_LOWER_LEFT) != render_to_fbo) key.sprite_origin_lower_left = true; - /* _NEW_LIGHT */ + /* _NEW_LIGHT | _NEW_PROGRAM */ key.do_flat_shading = (ctx->Light.ShadeModel == GL_FLAT); - key.do_twoside_color = (ctx->Light.Enabled && ctx->Light.Model.TwoSide); + key.do_twoside_color = ((ctx->Light.Enabled && ctx->Light.Model.TwoSide) || + ctx->VertexProgram._TwoSideEnabled); /* _NEW_POLYGON */ if (key.do_twoside_color) { @@ -214,7 +215,7 @@ brw_upload_sf_prog(struct brw_context *brw) const struct brw_tracked_state brw_sf_prog = { .dirty = { .mesa = (_NEW_HINT | _NEW_LIGHT | _NEW_POLYGON | _NEW_POINT | - _NEW_TRANSFORM | _NEW_BUFFERS), + _NEW_TRANSFORM | _NEW_BUFFERS | _NEW_PROGRAM), .brw = (BRW_NEW_REDUCED_PRIMITIVE), .cache = CACHE_NEW_VS_PROG },