diff options
author | Brian Paul <[email protected]> | 2008-06-20 11:05:00 -0600 |
---|---|---|
committer | Keith Whitwell <[email protected]> | 2008-09-21 22:13:55 -0700 |
commit | 3a4bed8f088d6f7c558ad187c338cbcd6c692b5d (patch) | |
tree | 4313e452d3a3f216af55a5d81f5f1e760fdfcbd5 | |
parent | 85f553d3c11a1fdf26e8ceb4767742afce0b24ff (diff) |
mesa: revamp glBlendFunc loopback
-rw-r--r-- | src/mesa/main/blend.c | 10 | ||||
-rw-r--r-- | src/mesa/main/dlist.c | 9 |
2 files changed, 9 insertions, 10 deletions
diff --git a/src/mesa/main/blend.c b/src/mesa/main/blend.c index 742247f8e21..4d4a8971419 100644 --- a/src/mesa/main/blend.c +++ b/src/mesa/main/blend.c @@ -46,19 +46,11 @@ * \param dfactor destination factor operator. * * \sa glBlendFunc, glBlendFuncSeparateEXT - * - * Swizzles the inputs and calls \c glBlendFuncSeparateEXT. This is done - * using the \c CurrentDispatch table in the context, so this same function - * can be used while compiling display lists. Therefore, there is no need - * for the display list code to save and restore this function. */ void GLAPIENTRY _mesa_BlendFunc( GLenum sfactor, GLenum dfactor ) { - GET_CURRENT_CONTEXT(ctx); - - (*ctx->CurrentDispatch->BlendFuncSeparateEXT)( sfactor, dfactor, - sfactor, dfactor ); + _mesa_BlendFuncSeparateEXT(sfactor, dfactor, sfactor, dfactor); } diff --git a/src/mesa/main/dlist.c b/src/mesa/main/dlist.c index fd48c55df7d..216af9b38bc 100644 --- a/src/mesa/main/dlist.c +++ b/src/mesa/main/dlist.c @@ -929,6 +929,13 @@ save_BlendFuncSeparateEXT(GLenum sfactorRGB, GLenum dfactorRGB, static void GLAPIENTRY +save_BlendFunc(GLenum srcfactor, GLenum dstfactor) +{ + save_BlendFuncSeparate(srcfactor, dstfactor, srcfactor, dstfactor); +} + + +static void GLAPIENTRY save_BlendColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha) { GET_CURRENT_CONTEXT(ctx); @@ -7663,7 +7670,7 @@ _mesa_init_dlist_table(struct _glapi_table *table) SET_Accum(table, save_Accum); SET_AlphaFunc(table, save_AlphaFunc); SET_Bitmap(table, save_Bitmap); - SET_BlendFunc(table, _mesa_BlendFunc); /* loops-back to BlendFuncSeparate */ + SET_BlendFunc(table, _save_BlendFunc); SET_CallList(table, _mesa_save_CallList); SET_CallLists(table, _mesa_save_CallLists); SET_Clear(table, save_Clear); |