On 10.06.2016 05:48, Ilia Mirkin wrote:
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.

Ouch. But there isn't really anything else that can be done, so...

Reviewed-by: Nicolai Hähnle <[email protected]>


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

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

Reply via email to