This was fixed in revision 47 of the ARB_dsa spec in Oct 22, 2015. Since
it's horrible to have differing APIs across library versions, we should
attempt to minimize the impact by backporting it as far as possible and
hope no one notices.

Signed-off-by: Ilia Mirkin <[email protected]>
Cc: "11.2 12.0" <[email protected]>
---

If people are good with this, I'll also nominate the glext.h header update for 
stable.

 src/mapi/glapi/gen/ARB_direct_state_access.xml | 1 +
 src/mesa/main/clear.c                          | 4 ++--
 src/mesa/main/clear.h                          | 2 +-
 3 files changed, 4 insertions(+), 3 deletions(-)

diff --git a/src/mapi/glapi/gen/ARB_direct_state_access.xml 
b/src/mapi/glapi/gen/ARB_direct_state_access.xml
index 155b6f8..43841bb 100644
--- a/src/mapi/glapi/gen/ARB_direct_state_access.xml
+++ b/src/mapi/glapi/gen/ARB_direct_state_access.xml
@@ -242,6 +242,7 @@
    <function name="ClearNamedFramebufferfi">
       <param name="framebuffer" type="GLuint" />
       <param name="buffer" type="GLenum" />
+      <param name="drawbuffer" type="GLint" />
       <param name="depth" type="GLfloat" />
       <param name="stencil" type="GLint" />
    </function>
diff --git a/src/mesa/main/clear.c b/src/mesa/main/clear.c
index 92f69ab..35b912c 100644
--- a/src/mesa/main/clear.c
+++ b/src/mesa/main/clear.c
@@ -646,12 +646,12 @@ _mesa_ClearBufferfi(GLenum buffer, GLint drawbuffer,
  */
 void GLAPIENTRY
 _mesa_ClearNamedFramebufferfi(GLuint framebuffer, GLenum buffer,
-                              GLfloat depth, GLint stencil)
+                              GLint drawbuffer, GLfloat depth, GLint stencil)
 {
    GLint oldfb;
 
    _mesa_GetIntegerv(GL_DRAW_FRAMEBUFFER_BINDING, &oldfb);
    _mesa_BindFramebuffer(GL_DRAW_FRAMEBUFFER, framebuffer);
-   _mesa_ClearBufferfi(buffer, 0, depth, stencil);
+   _mesa_ClearBufferfi(buffer, drawbuffer, depth, stencil);
    _mesa_BindFramebuffer(GL_DRAW_FRAMEBUFFER, (GLuint) oldfb);
 }
diff --git a/src/mesa/main/clear.h b/src/mesa/main/clear.h
index c298506..fb3bcde 100644
--- a/src/mesa/main/clear.h
+++ b/src/mesa/main/clear.h
@@ -75,6 +75,6 @@ _mesa_ClearBufferfi(GLenum buffer, GLint drawbuffer,
 
 extern void GLAPIENTRY
 _mesa_ClearNamedFramebufferfi(GLuint framebuffer, GLenum buffer,
-                              GLfloat depth, GLint stencil);
+                              GLint drawbuffer, GLfloat depth, GLint stencil);
 
 #endif
-- 
2.7.3

_______________________________________________
mesa-dev mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/mesa-dev

Reply via email to