diff options
author | Brian Paul <[email protected]> | 2008-06-20 11:05:00 -0600 |
---|---|---|
committer | Brian Paul <[email protected]> | 2008-06-20 11:05:00 -0600 |
commit | 9cae37870e66550d8cceac4b4a8765c1936d4ddc (patch) | |
tree | 939443f4cd43ce2c3f40eb7c8cfa626b82b54db0 | |
parent | 1b241a4369fcba5972a7ab38b9a5595a434e0b56 (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 07d279da301..c672c0f8b8b 100644 --- a/src/mesa/main/dlist.c +++ b/src/mesa/main/dlist.c @@ -926,6 +926,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); @@ -7602,7 +7609,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); |