mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-01-27 03:20:33 +01:00
mesa: Fix errors values returned by glShaderBinary()
Page 68, section 7.2 'Shader Binaries" of the of the OpenGL ES 3.1,
and page 88 of the OpenGL 4.5 specs state:
"An INVALID_VALUE error is generated if count or length is negative.
An INVALID_ENUM error is generated if binaryformat is not a supported
format returned in SHADER_BINARY_FORMATS."
Currently, an INVALID_OPERATION error is returned for all cases.
Fixes 1 dEQP test:
* dEQP-GLES3.functional.negative_api.shader.shader_binary
Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
Cc: 10.6 <mesa-stable@lists.freedesktop.org>
(cherry picked from commit b38a50f1e3)
This commit is contained in:
parent
1f6798a70a
commit
58b2e95c1f
1 changed files with 14 additions and 3 deletions
|
|
@ -1692,12 +1692,23 @@ _mesa_ShaderBinary(GLint n, const GLuint* shaders, GLenum binaryformat,
|
|||
const void* binary, GLint length)
|
||||
{
|
||||
GET_CURRENT_CONTEXT(ctx);
|
||||
(void) n;
|
||||
(void) shaders;
|
||||
(void) binaryformat;
|
||||
(void) binary;
|
||||
(void) length;
|
||||
_mesa_error(ctx, GL_INVALID_OPERATION, "glShaderBinary");
|
||||
|
||||
/* Page 68, section 7.2 'Shader Binaries" of the of the OpenGL ES 3.1, and
|
||||
* page 88 of the OpenGL 4.5 specs state:
|
||||
*
|
||||
* "An INVALID_VALUE error is generated if count or length is negative.
|
||||
* An INVALID_ENUM error is generated if binaryformat is not a supported
|
||||
* format returned in SHADER_BINARY_FORMATS."
|
||||
*/
|
||||
if (n < 0 || length < 0) {
|
||||
_mesa_error(ctx, GL_INVALID_VALUE, "glShaderBinary(count or length < 0)");
|
||||
return;
|
||||
}
|
||||
|
||||
_mesa_error(ctx, GL_INVALID_ENUM, "glShaderBinary(format)");
|
||||
}
|
||||
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue