* On success \c GL_TRUE is returned. Otherwise, \c GL_FALSE is returned.
*/
static GLboolean
-get_client_data( __GLXattribute * state, GLenum cap, GLintptr * data )
+get_client_data( __GLXcontext * gc, GLenum cap, GLintptr * data )
{
GLboolean retval = GL_TRUE;
+ __GLXattribute * state = (__GLXattribute *)(gc->client_state_private);
const GLint tex_unit = __glXGetActiveTextureUnit( state );
case GL_UNPACK_LSB_FIRST:
*data = (GLintptr)state->storeUnpack.lsbFirst;
break;
+ case GL_CLIENT_ATTRIB_STACK_DEPTH:
+ *data = (GLintptr)(gc->attributes.stackPointer - gc->attributes.stack);
+ break;
case GL_MAX_CLIENT_ATTRIB_STACK_DEPTH:
*data = (GLintptr)__GL_CLIENT_ATTRIB_STACK_DEPTH;
break;
{
const GLenum origVal = val;
__GLX_SINGLE_DECLARE_VARIABLES();
- __GLXattribute * state = (__GLXattribute *)(gc->client_state_private);
xGLXSingleReply reply;
val = RemapTransposeEnum( val );
** for example, to call a query between glBegin() and glEnd()).
*/
- if ( get_client_data( state, val, & data ) ) {
+ if ( get_client_data( gc, val, & data ) ) {
*b = (GLboolean) data;
}
else {
{
const GLenum origVal = val;
__GLX_SINGLE_DECLARE_VARIABLES();
- __GLXattribute * state = (__GLXattribute *)(gc->client_state_private);
xGLXSingleReply reply;
val = RemapTransposeEnum( val );
** for example, to call a query between glBegin() and glEnd()).
*/
- if ( get_client_data( state, val, & data ) ) {
+ if ( get_client_data( gc, val, & data ) ) {
*d = (GLdouble) data;
}
else {
{
const GLenum origVal = val;
__GLX_SINGLE_DECLARE_VARIABLES();
- __GLXattribute * state = (__GLXattribute *)(gc->client_state_private);
xGLXSingleReply reply;
val = RemapTransposeEnum( val );
** for example, to call a query between glBegin() and glEnd()).
*/
- if ( get_client_data( state, val, & data ) ) {
+ if ( get_client_data( gc, val, & data ) ) {
*f = (GLfloat) data;
}
else {
{
const GLenum origVal = val;
__GLX_SINGLE_DECLARE_VARIABLES();
- __GLXattribute * state = (__GLXattribute *)(gc->client_state_private);
xGLXSingleReply reply;
val = RemapTransposeEnum( val );
** for example, to call a query between glBegin() and glEnd()).
*/
- if ( get_client_data( state, val, & data ) ) {
+ if ( get_client_data( gc, val, & data ) ) {
*i = (GLint) data;
}
else {