summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/mesa/pipe/p_state.h2
-rw-r--r--src/mesa/state_tracker/st_atom_setup.c3
2 files changed, 3 insertions, 2 deletions
diff --git a/src/mesa/pipe/p_state.h b/src/mesa/pipe/p_state.h
index 7f9a6d12de7..9b4b3366540 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 23adf0b7c86..457bfaa9ba8 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) {