diff options
Diffstat (limited to 'src/glx/x11')
-rw-r--r-- | src/glx/x11/indirect_vertex_array.c | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/src/glx/x11/indirect_vertex_array.c b/src/glx/x11/indirect_vertex_array.c index 09d7244ba92..769c88f4d26 100644 --- a/src/glx/x11/indirect_vertex_array.c +++ b/src/glx/x11/indirect_vertex_array.c @@ -1601,17 +1601,21 @@ void __indirect_glClientActiveTextureARB(GLenum texture) /** + * Modify the enable state for the selected array */ GLboolean -__glXSetArrayEnable( __GLXattribute * state, - GLenum key, unsigned index, GLboolean enable ) +__glXSetArrayEnable(__GLXattribute *state, GLenum key, unsigned index, + GLboolean enable) { struct array_state_vector * arrays = state->array_state; struct array_state * a; - if ( key == GL_TEXTURE_COORD_ARRAY ) { - index = arrays->active_texture_unit; + /* Texture coordinate arrays have an implict index set when the + * application calls glClientActiveTexture. + */ + if (key == GL_TEXTURE_COORD_ARRAY) { + index = arrays->active_texture_unit; } a = get_array_entry( arrays, key, index ); |