[Mesa-dev] [PATCH 2/2] main/buffers: take into account FRONT_AND_BACK on ReadBuffer

Alejandro PiƱeiro apinheiro at igalia.com
Wed Jan 11 21:52:48 UTC 2017


>From OpenGL 3.1 spec, section 4.3.1 "Reading Pixels", page 190 (203 PDF)

  "When READ FRAMEBUFFER BINDING is zero, i.e. the default
   framebuffer, src must be one of the values listed in table 4.4,
   including NONE . FRONT_AND_BACK , FRONT , and LEFT refer to the
   front left buffer."

There is an equivalent text on OpenGL 4.5 spec, section 18.2.1
"Selecting Buffers for Reading", page 502 (524 PDF), so the behaviour
is still the same.

Part of the fix for:
GL45-CTS.direct_state_access.framebuffers_draw_read_buffers_errors
---

Note that this functionality was not tested on piglit. Just sent
a test to the piglit list that will fail until this patch gets
accepted.

 src/mesa/main/buffers.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/src/mesa/main/buffers.c b/src/mesa/main/buffers.c
index 92c1839..a5655f6 100644
--- a/src/mesa/main/buffers.c
+++ b/src/mesa/main/buffers.c
@@ -204,6 +204,8 @@ read_buffer_enum_to_index(const struct gl_context *ctx, GLenum buffer)
          return BUFFER_FRONT_LEFT;
       case GL_AUX0:
          return BUFFER_AUX0;
+      case GL_FRONT_AND_BACK:
+         return BUFFER_FRONT_LEFT;
       case GL_AUX1:
       case GL_AUX2:
       case GL_AUX3:
-- 
2.9.3



More information about the mesa-dev mailing list