-/* $Id: dlist.c,v 1.73 2001/06/11 19:17:11 brianp Exp $ */
+/* $Id: dlist.c,v 1.74 2001/06/12 22:06:10 brianp Exp $ */
/*
* Mesa 3-D graphics library
OPCODE_WINDOW_POS,
/* GL_ARB_multitexture */
OPCODE_ACTIVE_TEXTURE,
- OPCODE_CLIENT_ACTIVE_TEXTURE,
/* GL_SGIX/SGIS_pixel_texture */
OPCODE_PIXEL_TEXGEN_SGIX,
OPCODE_PIXEL_TEXGEN_PARAMETER_SGIS,
InstSize[OPCODE_SAMPLE_COVERAGE] = 3;
/* GL_ARB_multitexture */
InstSize[OPCODE_ACTIVE_TEXTURE] = 2;
- InstSize[OPCODE_CLIENT_ACTIVE_TEXTURE] = 2;
}
init_flag = 1;
}
}
-/* GL_ARB_multitexture */
-static void save_ClientActiveTextureARB( GLenum target )
-{
- GET_CURRENT_CONTEXT(ctx);
- Node *n;
- ASSERT_OUTSIDE_SAVE_BEGIN_END_AND_FLUSH(ctx);
- n = ALLOC_INSTRUCTION( ctx, OPCODE_CLIENT_ACTIVE_TEXTURE, 1 );
- if (n) {
- n[1].e = target;
- }
- if (ctx->ExecuteFlag) {
- (*ctx->Exec->ClientActiveTextureARB)( target );
- }
-}
-
-
-
/* GL_ARB_transpose_matrix */
static void save_LoadTransposeMatrixdARB( const GLdouble m[16] )
case OPCODE_ACTIVE_TEXTURE: /* GL_ARB_multitexture */
(*ctx->Exec->ActiveTextureARB)( n[1].e );
break;
- case OPCODE_CLIENT_ACTIVE_TEXTURE: /* GL_ARB_multitexture */
- (*ctx->Exec->ClientActiveTextureARB)( n[1].e );
- break;
case OPCODE_PIXEL_TEXGEN_SGIX: /* GL_SGIX_pixel_texture */
(*ctx->Exec->PixelTexGenSGIX)( n[1].e );
break;
ctx->Exec->ResizeBuffersMESA( );
}
+
+static void exec_ClientActiveTextureARB( GLenum target )
+{
+ GET_CURRENT_CONTEXT(ctx);
+ FLUSH_VERTICES(ctx, 0);
+ ctx->Exec->ClientActiveTextureARB(target);
+}
+
static void exec_SecondaryColorPointerEXT(GLint size, GLenum type,
GLsizei stride, const GLvoid *ptr)
{
/* GL_ARB_multitexture */
table->ActiveTextureARB = save_ActiveTextureARB;
- table->ClientActiveTextureARB = save_ClientActiveTextureARB;
+ table->ClientActiveTextureARB = exec_ClientActiveTextureARB;
/* GL_EXT_blend_func_separate */
table->BlendFuncSeparateEXT = save_BlendFuncSeparateEXT;