diff options
| -rw-r--r-- | src/mesa/pipe/p_state.h | 2 | ||||
| -rw-r--r-- | src/mesa/state_tracker/st_atom_setup.c | 3 | 
2 files changed, 3 insertions, 2 deletions
| diff --git a/src/mesa/pipe/p_state.h b/src/mesa/pipe/p_state.h index 7f9a6d12de..9b4b336654 100644 --- a/src/mesa/pipe/p_state.h +++ b/src/mesa/pipe/p_state.h @@ -87,7 +87,7 @@ struct pipe_setup_state     GLuint point_smooth:1; -   GLubyte line_stipple_factor;  /**< [1..255] only */ +   GLubyte line_stipple_factor;  /**< [1..256] actually */     GLushort line_stipple_pattern;     GLfloat line_width;     GLfloat point_size;           /**< used when no per-vertex size */ diff --git a/src/mesa/state_tracker/st_atom_setup.c b/src/mesa/state_tracker/st_atom_setup.c index 23adf0b7c8..457bfaa9ba 100644 --- a/src/mesa/state_tracker/st_atom_setup.c +++ b/src/mesa/state_tracker/st_atom_setup.c @@ -184,7 +184,8 @@ static void update_setup_state( struct st_context *st )     setup.line_smooth = ctx->Line.SmoothFlag;     setup.line_stipple_enable = ctx->Line.StippleFlag;     setup.line_stipple_pattern = ctx->Line.StipplePattern; -   setup.line_stipple_factor = ctx->Line.StippleFactor; +   /* GL stipple factor is in [1,256], remap to [0, 255] here */ +   setup.line_stipple_factor = ctx->Line.StippleFactor - 1;     if (memcmp(&setup, &st->state.setup, sizeof(setup)) != 0) { | 
