diff options
| author | Brian Paul <brian.paul@tungstengraphics.com> | 2008-07-09 08:35:50 -0600 | 
|---|---|---|
| committer | Brian Paul <brian.paul@tungstengraphics.com> | 2008-07-09 08:39:25 -0600 | 
| commit | 4ca0af188267ab92f84223acd7f8b957be0cb5f6 (patch) | |
| tree | 495d07ffd196e2b9a15c59203be1a2b2e28de2e0 /src | |
| parent | a2e435054c0d410e92d1e76a23f8d801a606537d (diff) | |
mesa: fix state.clip[n].plane parsing bug (bug 16611)
Diffstat (limited to 'src')
| -rw-r--r-- | src/mesa/shader/arbprogparse.c | 9 | 
1 files changed, 6 insertions, 3 deletions
| diff --git a/src/mesa/shader/arbprogparse.c b/src/mesa/shader/arbprogparse.c index 97bda9c6b3..f10233e5fe 100644 --- a/src/mesa/shader/arbprogparse.c +++ b/src/mesa/shader/arbprogparse.c @@ -1132,7 +1132,9 @@ parse_state_single_item (GLcontext * ctx, const GLubyte ** inst,                           struct arb_program *Program,                           gl_state_index state_tokens[STATE_LENGTH])  { -   switch (*(*inst)++) { +   GLubyte token = *(*inst)++; + +   switch (token) {        case STATE_MATERIAL_PARSER:           state_tokens[0] = STATE_MATERIAL;           state_tokens[1] = parse_face_type (inst); @@ -1317,7 +1319,6 @@ parse_state_single_item (GLcontext * ctx, const GLubyte ** inst,        case STATE_CLIP_PLANE:           state_tokens[0] = STATE_CLIPPLANE; -         state_tokens[1] = parse_integer (inst, Program);           if (parse_clipplane_num (ctx, inst, Program,                                    (GLint *) &state_tokens[1]))              return 1; @@ -1769,7 +1770,9 @@ parse_param_elements (GLcontext * ctx, const GLubyte ** inst,     gl_state_index state_tokens[STATE_LENGTH] = {0, 0, 0, 0, 0};     GLfloat const_values[4]; -   switch (*(*inst)++) { +   GLubyte token = *(*inst)++; + +   switch (token) {        case PARAM_STATE_ELEMENT:           if (parse_state_single_item (ctx, inst, Program, state_tokens))              return 1; | 
