main/buffers: take into account FRONT_AND_BACK on ReadBuffer

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

Reviewed-by: Anuj Phogat <anuj.phogat@gmail.com>
This commit is contained in:
Alejandro Piñeiro 2017-01-11 18:11:55 -02:00
parent d54bc7e01f
commit f354cd5c69
1 changed files with 2 additions and 0 deletions

View File

@ -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: