From: Eric Anholt Date: Tue, 28 Jun 2011 23:39:15 +0000 (-0700) Subject: mesa: Don't error on glFeedbackBuffer(size = 0, buffer = NULL) X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=07e5295b6fe77253ea38dbc0d649b20e7275373a;p=mesa.git mesa: Don't error on glFeedbackBuffer(size = 0, buffer = NULL) The existing error result doesn't appear in the GL 2.1 or 3.2 compatibility specs, and triggers an unexpected GL error in Intel's oglconform when it tries to reset the feedback state after usage so that the "diff the state at error time vs. context init time" code doesn't generate spurious diffs. The unexpected GL error then translates into testcase failure. Brian wants the safety check on buffer = NULL, though, so that people can't as easily set up a broken buffer. --- diff --git a/src/mesa/main/feedback.c b/src/mesa/main/feedback.c index fcb089f1f31..597ec1e3f9a 100644 --- a/src/mesa/main/feedback.c +++ b/src/mesa/main/feedback.c @@ -64,7 +64,7 @@ _mesa_FeedbackBuffer( GLsizei size, GLenum type, GLfloat *buffer ) _mesa_error( ctx, GL_INVALID_VALUE, "glFeedbackBuffer(size<0)" ); return; } - if (!buffer) { + if (!buffer && size > 0) { _mesa_error( ctx, GL_INVALID_VALUE, "glFeedbackBuffer(buffer==NULL)" ); ctx->Feedback.BufferSize = 0; return;