diff options
Diffstat (limited to 'src/mesa/main/attrib.c')
-rw-r--r-- | src/mesa/main/attrib.c | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/src/mesa/main/attrib.c b/src/mesa/main/attrib.c index 62d968a32fa..8beb0a575b9 100644 --- a/src/mesa/main/attrib.c +++ b/src/mesa/main/attrib.c @@ -838,7 +838,16 @@ _mesa_PopAttrib(void) color->BlendDstRGB, color->BlendSrcA, color->BlendDstA); - _mesa_BlendEquation(color->BlendEquation); + /* This special case is because glBlendEquationSeparateEXT + * cannot take GL_LOGIC_OP as a parameter. + */ + if ( color->BlendEquationRGB == color->BlendEquationA ) { + _mesa_BlendEquation(color->BlendEquationRGB); + } + else { + _mesa_BlendEquationSeparateEXT(color->BlendEquationRGB, + color->BlendEquationA); + } _mesa_BlendColor(color->BlendColor[0], color->BlendColor[1], color->BlendColor[2], |