On 08/19/2015 12:17 PM, Marta Lofstedt wrote:
From: Marta Lofstedt <marta.lofst...@intel.com>

According to OpenGL ES 3.1 specification table : 20.2 and
OpenGL specification 4.4 table 23.4. The glGetIntegeri_v
functions should report the name  of the buffer bound
when called with GL_VERTEX_BINDING_BUFFER.

Signed-off-by: Marta Lofstedt <marta.lofst...@intel.com>
---
  src/mesa/main/get.c | 8 ++++++++
  1 file changed, 8 insertions(+)

diff --git a/src/mesa/main/get.c b/src/mesa/main/get.c
index 307a5ff..ae2d0b7 100644
--- a/src/mesa/main/get.c
+++ b/src/mesa/main/get.c
@@ -1989,6 +1989,14 @@ find_value_indexed(const char *func, GLenum pname, 
GLuint index, union value *v)
        v->value_int = 
ctx->Array.VAO->VertexBinding[VERT_ATTRIB_GENERIC(index)].Stride;
        return TYPE_INT;

+   case GL_VERTEX_BINDING_BUFFER:
+      if (!_mesa_is_desktop_gl(ctx) && !_mesa_is_gles31(ctx))
+          goto invalid_enum;

Looks like this enum/query was added in GL 4.3 so don't we need to check for that version?


+      if (index >= ctx->Const.Program[MESA_SHADER_VERTEX].MaxAttribs)
+          goto invalid_value;

Looks like you have 4 spaces of indentation there instead of 3.

-Brian

+      v->value_int = 
ctx->Array.VAO->VertexBinding[VERT_ATTRIB_GENERIC(index)].BufferObj->Name;
+      return TYPE_INT;
+
     /* ARB_shader_image_load_store */
     case GL_IMAGE_BINDING_NAME: {
        struct gl_texture_object *t;


_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/mesa-dev

Reply via email to