On 02/10/2015 07:40 AM, Eduardo Lima Mitev wrote: > Section 4.2.3 Clearing the Buffers, page 190 of the OpenGL ES 3.0.4 spec says: > "ClearBufferiv generates an INVALID_ENUM error if buffer is not COLOR or > STENCIL." > > Fixes 1 dEQP test: > * dEQP-GLES3.functional.negative_api.buffer.clear_bufferiv > --- > src/mesa/main/clear.c | 13 +++++++++++++ > 1 file changed, 13 insertions(+) > > diff --git a/src/mesa/main/clear.c b/src/mesa/main/clear.c > index 3c4ced8..46de80b 100644 > --- a/src/mesa/main/clear.c > +++ b/src/mesa/main/clear.c > @@ -323,6 +323,19 @@ _mesa_ClearBufferiv(GLenum buffer, GLint drawbuffer, > const GLint *value) > _mesa_update_state( ctx ); > } > > + /* Section 4.2.3 Clearing the Buffers, page 190 of the OpenGL ES 3.0.4 > + * spec says:
Desktop OpenGL 4.5 (and possibly earlier) has the same error. See the bottom of page 488 (page 520 of the PDF). I believe this is a clarification of previous specs, so we should always generate the error. With that changed, this patch is Reviewed-by: Ian Romanick <ian.d.roman...@intel.com> > + * > + * "ClearBufferiv generates an INVALID_ENUM error if buffer is not > COLOR or > + * STENCIL." > + */ > + if (_mesa_is_gles3(ctx) && > + (buffer == GL_DEPTH || buffer == GL_DEPTH_STENCIL)) { > + _mesa_error(ctx, GL_INVALID_ENUM, > + "glClearBufferiv(buffer=GL_DEPTH || GL_DEPTH_STENCIL)"); > + return; > + } > + > switch (buffer) { > case GL_STENCIL: > /* Page 264 (page 280 of the PDF) of the OpenGL 3.0 spec says: > _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev